我需要存储结构化文档,我需要能够找到它们搜索属性。
例如:
CREATE CLASS testDocument
INSERT INTO testDocument (my_prop) values ({"name": "James", "age": 23})
INSERT INTO testDocument (my_prop) values ({"name": "John", "age": 51, "tatoos": ["dragon", "jellyfish", "baloon"]})
从那里我可以直接检索数据,例如:
SELECT my_prop.tatoos[0] FROM testDocument WHERE my_prop.age=51
但我无法搜索整个对象。有没有办法在文件中的任何地方找到“龙”这个词? 我试图添加LUCENE索引但没有成功。如果我需要定义它,这种属性(结构化文档)的类型是什么?
由于 劳伦
答案 0 :(得分:0)
你可以用这个
SELECT my_prop.name FROM testDocument WHERE my_prop.tatoos contains "dragon"
答案 1 :(得分:0)
如果您需要定义此类属性的类型,可以使用embeddedlist for tatoos
CREATE CLASS testDocument
create property testDocument.name String
create property testDocument.age Integer
create property testDocument.tatoos Embeddedlist String
INSERT INTO testDocument content {"name": "James", "age": 23}
INSERT INTO testDocument content {"name": "John", "age": 51, "tatoos": ["dragon", "jellyfish", "baloon"]}
您可以使用此查询
SELECT FROM testDocument where age=51 and tatoos contains "dragon"
<强>更新强>
您可以使用此查询
select from testDocument where my_prop.toJSON('fetchPlan:*:-1').indexOf("dragon") > -1