我有NSDate
以双格式存储在我的sqlite表格中 - 使用 timeIntervalSince1970 功能。
现在我想要回复像
这样的独特日期组合{
January 2014
December 2013
November 2013
December 2012
November 2012
October 2011
}
数据必须按排序顺序排列。如何以这种格式获取数据?
我尝试过使用日期功能
SELECT date(DateInterval, '%m', '%Y') FROM MyTable
但没有结果。
希望有所帮助:)
先谢谢。
答案 0 :(得分:2)
你在找这样的东西吗?
SELECT CASE m
WHEN '01' THEN 'January'
WHEN '02' THEN 'Febuary'
WHEN '03' THEN 'March'
WHEN '04' THEN 'April'
WHEN '05' THEN 'May'
WHEN '06' THEN 'June'
WHEN '07' THEN 'July'
WHEN '08' THEN 'August'
WHEN '09' THEN 'September'
WHEN '10' THEN 'October'
WHEN '11' THEN 'November'
WHEN '12' THEN 'December'
END || ' ' || y AS dates
FROM
(
SELECT DISTINCT
strftime('%m', DateInterval, 'unixepoch') m,
strftime('%Y', DateInterval, 'unixepoch') y
FROM MyTable
) q
ORDER BY y DESC, m DESC
示例输出:
| dates | |---------------| | January 2014 | | December 2013 | | November 2013 | | October 2013 |
这是 SQLFiddle 演示
答案 1 :(得分:0)
MySQL
,然后使用DATE_FORMAT
功能获取特定格式以供显示。
SELECT
date_format(DateInterval, '%M %Y') as dates
FROM MyTable
order by
date_format( DateInterval, '%Y%m' ) desc;