我的MySQL数据库是为我的唱片店。
我有一个名为records的表,里面有700条记录。
我的字段是artist, title, release_date等
release_date为varchar格式,输入并存储为mm/yyyy。
。, 01/2003 = Jan 2003
。, zz/1997 = 1997年期间。有些记录没有一个月。
我希望能够排序,在我的结果中以年和月的顺序显示记录。例如,我可以向访问者展示前10个最近记录的列表。如果一条记录以zz开头,那么它将在该年份的列表中排在最后。
排序结果示例如下:
11/2001 06/2001zz/200109/2000
01/2000zz/2000
在MySQL中,您可以这样做:
order by right(release_date, 4) desc,
left(release_date, 2) + 0 desc;
第二个键上的音符。这将月份转换为数字。值zz
将被转换为0,因为没有前导数字。