如何按年份从表格中选择行?
SELECT * FROM speckdata AS s WHERE DATE_FORMAT(s.localdate, '%Y') = '2014')
我可以在MySQL
现在sqlite
我收到此错误,
SQLiteManager:可能的SQL语法错误:SELECT * 来自speckdata AS 在哪里DATE_FORMAT(s.localdate,'%Y')=' 2014')[near")":语法错误]异常名称:NS_ERROR_FAILURE异常消息:组件 返回失败代码:0x80004005(NS_ERROR_FAILURE) [mozIStorageConnection.createStatement]
有什么想法吗?
修改
如果我将其更改为,
WHERE DATE(s.localdate, '%Y') = '2014'
没有结果。
BTW,localdate
采用日期时间格式,例如 2014-10-09 14:59:53
答案 0 :(得分:8)
试试这个:
SELECT * FROM speckdata AS s WHERE strftime('%Y', s.localdate) = '2014'
答案 1 :(得分:2)
由于DATE_FORMAT不起作用,也许您可以尝试替代解决方案
SELECT * FROM speckdata AS s WHERE DATE(s.localdate) LIKE '2014%'
P.S。您在编辑中调用了DATE而不是DATE_FORMAT,我不知道它的意图或意外。