我需要将JSON对象存储在SQLite数据库中,然后对它进行复杂的查询。
我做了一个这样的表:
+--------------------------------------+
|document | property | string | number|
+--------------------------------------+
|foo | "title" | "test" | |
+--------------------------------------+
|foo | "id" | | 42 |
+--------------------------------------+
|bar | "id" | | 43 |
+--------------------------------------+
对于两个对象
foo {"title": "test", "id": 42}
bar {id: 43}
但是我无法执行“ AND”查询,例如:
SELECT DISTINCT id FROM table WHERE title = "test" AND id = 42
如您所见,“ WHERE”后面的部分完全是胡说八道,但是我不知道如何创建可以满足我需要的查询。
那么,您是否认为有更好的方法来存储我的数据,或者是解决“ AND”查询的方法?
当然,JSON可以包含任何属性,因此我无法为每个属性创建带有列的表。
我正在使用WebSQL,这是没有扩展的SQLite。
我知道我的问题很具体,但是您能帮我吗?
2
如果这对于您的应用程序确实很重要,那么最好使用真实的文档存储(“ NoSQL”)或切换到Postgres,后者结合了非常高效的JSON存储和强大的关系功能。
—
a_horse_with_no_name 2015年
@CL。是的 这也是谷歌搜索“ sqlite json”时的第一个结果:)
—
Izzy 2015年
@Izzy首先,对我而言,至少这个问题现在是第一个结果,而不是文档。其次,该扩展名不是OP的好答案,OP明确声明使用“ WebSQL,这是没有扩展名的SQLite”。
—
OJFord