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

我可以使用自定义日期格式的MySQL日期字段类型吗,mysql,Mysql,我有一个MySQL数据库,有两个字段:日期和值。 我的日期是季度(2007年第一季度,2008年第二季度…)。我希望能够使用以下SQL查询: 从表中选择*,其中1个订单按日期排序 我该怎么做 我猜您希望订购这些产品,以便所有2007年的产品都按顺序显示,然后是2008年的产品,等等。这样应该可以: SELECT * FROM table WHERE 1 ORDER BY SUBSTRING(Date, 4, 4), SUBSTRING(Date, 1, 2); 假设您的日期格式都是一致的,并且

我有一个MySQL数据库,有两个字段:日期和值。 我的日期是季度(2007年第一季度,2008年第二季度…)。我希望能够使用以下SQL查询:

从表中选择*,其中1个订单按日期排序


我该怎么做

我猜您希望订购这些产品,以便所有2007年的产品都按顺序显示,然后是2008年的产品,等等。这样应该可以:

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

假设您的日期格式都是一致的,并且您的“日期”列实际上是一个VARCHAR或类似的…

我猜您希望对其进行排序,以便所有2007年的日期按顺序显示,然后是2008年的日期,等等。这应该可以:

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

假设您的日期格式都是一致的,并且您的“日期”列实际上是VARCHAR或类似的…

使用日期列并确定每个季度的日期。然后,您可以使用内置的日期函数。

使用日期列并确定每个季度的日期。然后您可以使用内置的日期函数。

从表中选择*,其中1个“按日期排序”
已将字段
Date
排序为
Q1-2007
Q2-2007
Q3-2007
Q4-2007
?如果您对这些字符串进行排序,那么它们应该是这样排序的


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

从表中选择*,其中1个按日期排序的字段已将
日期
字段排序为
Q1-2007
Q2-2007
Q3-2007
Q4-2007
?如果您对这些字符串进行排序,那么它们应该是这样排序的


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

如果可以更改数据模型,最好将单个
Date
varchar列更改为两个整数列:
Year
Quarter
。如果可以更改数据模型,最好将单个
Date
varchar列更改为两个整数列:
Year
Quarter