我正在尝试创建时间戳的静态列表,以便我可以将它们再次加入另一个表以创建图表数据。到目前为止,我有一个这种格式的查询SELECT * FROM (VALUES('a'),('b'),('c'),('d')) AS tbl
,它在 sqlitestudio 中有效,但在 android 4.4 中无效。当我在手机中运行查询时出现错误
android.database.sqlite.SQLiteException: near "VALUES": syntax error (code 1): , while compile: SELECT * ...
我也尝试将值项包装在另一个这样的选择中,SELECT * FROM (SELECT * FROM (VALUES('a'),('b'),('c'),('d'))) AS tbl
但我仍然得到同样的错误。
完整的查询现在看起来像这样
SELECT * FROM (select * from ( VALUES (1458111312025),
(1455667200000),
(1455753600000),
(1455840000000),
(1455926400000),
(1456012800000),
(1456099200000),
(1456185600000),
(1456272000000),
(1456358400000),
(1456444800000),
(1456531200000),
(1456617600000),
(1456704000000),
(1456790400000),
(1456876800000),
(1456963200000),
(1457049600000),
(1457136000000),
(1457222400000),
(1457308800000),
(1457395200000),
(1457481600000),
(1457568000000),
(1457654400000),
(1457740800000),
(1457827200000),
(1457913600000),
(1458000000000),
(1458086400000))) i LEFT JOIN (
SELECT (osysdate- (osysdate % 86400000) ) interval, SUM(field004) totalval FROM onlineactivities WHERE field003 !=300000 and osysdate> 1455605711999 GROUP BY interval )
onl ON i.'' = onl.interval;;
请注意,这在 sqlite 版本 3.8.10 的 sqlitestudio 中有效,但在 android kitkat 中无效(不确定其中的 sqlite 版本)可能是什么问题?