我可以使用自定义日期格式的MySQL日期字段类型

问题描述:

我有一个MySQL数据库有两个字段:日期和值。 我的日期是季度(Q1-2007,Q2-2008 ...)。我希望能够使用下面的SQL查询:我可以使用自定义日期格式的MySQL日期字段类型

SELECT * FROM table WHERE 1 ORDER BY Date

我怎样才能做到这一点?

+1

如果可以更改数据模型,最好将单个Date的varchar列更改为两个整数列:Year和Quarter。 – 2009-12-23 23:55:40

我猜你想让他们下令让所有的那些2007年的顺序显示其次是2008年的,等这应该工作:

SELECT * FROM table WHERE 1 ORDER BY SUBSTRING(Date, 4, 4), SUBSTRING(Date, 1, 2); 

假设你的日期格式都是一致的,那你的'Date'列实际上是一个VARCHAR或类似的...

使用日期列并决定每个季度的日期。然后你可以使用内建的日期功能。

SELECT * FROM table WHERE 1 ORDER BY Date已经排序字段DateQ1-2007Q2-2007Q3-2007Q4-2007?如果你排序这样的字符串,那应该是他们如何排序。

如果那么我会创建一个数据库来包含这些值,我宁愿使用3个字段,并使用两个不同的字段季度和年份。