我创建了属性codeLanguage并添加了带有值" SQL,JavaScript"的自定义字段类型。
ALTER PROPERTY MyClass.codeLanguage CUSTOM type='SQL,JavaScript'
在查询中我使用了这样的东西:
SELECT * FROM MyClass WHERE codeLanguage['type'] = 'JavaScript'
我希望得到有关领域的价值"输入"。我坚持这个:
SELECT codeLanguage['type'] FROM MyClass
但我只获得单列" codeLanguage"
的记录+--------------+
| codeLanguage |
+--------------+
| SQL +
+--------------+
| SQL |
+--------------+
我想要像这样得到:
+--------------+
| codeLanguage |
+--------------+
|SQL,JavaScript+
+--------------+
如何仅将值属性字段值作为元数据?
答案 0 :(得分:0)
要使用CUSTOM
数据类型,您应该提供marshall和unmarshall方法。见:OrientDB - Supported Types。你的目标是什么?就像现在一样,您可以使用EMBEDDEDLIST
类型。这是一个例子:
create class MyClass extends v
create property MyClass.codeLanguage EMBEDDEDLIST
insert into MyClass(codeLanguage) values (['SQL','JavaScript'])
select * from MyClass where codeLanguage contains "JavaScript"
select codeLanguage from MyClass
上一个查询的输出: