我有一张这样的桌子:
TestTable
---------
data (TEXT)
所有data
值都是 JSON 对象,例如{ a:1, b:2, c:3 }
.
我希望能够在ORDER BY data->b DESC
没有全表扫描(索引)的情况下查询数据库。
这在 SQLite JSON1 中可能吗?
我有一张这样的桌子:
TestTable
---------
data (TEXT)
所有data
值都是 JSON 对象,例如{ a:1, b:2, c:3 }
.
我希望能够在ORDER BY data->b DESC
没有全表扫描(索引)的情况下查询数据库。
这在 SQLite JSON1 中可能吗?
使用功能json_extract()
:
SELECT *
FROM TestTable
ORDER BY json_extract(data, '$.b') DESC;
请参阅演示。
如果引用的值b
则转换为数字:
SELECT *
FROM TestTable
ORDER BY json_extract(data, '$.b') + 0 DESC;
请参阅演示。