Select 属性 来自 OrientDb 中的 link 属性

Select property from a link property in OrientDb

在 OrientDB 中,我有一个 class "V_MyClass" 和一个 "link" 类型的 属性 到 class V_User ("createdBy").两者都扩展 V。 此刻,我有一个查询 returns 来自 class.

的所有元素
select from MyClass

"createdBy" 类似于“#1:11”。 V_User 有一个 属性 像 "username"。我想在 select.

中为 "createdBy" 添加 "username"

SQL版本是: - 当前查询:

select * from MyClass

- 请求查询:

select m.*, u.username from myclass m inner join user u on m.createdBy = u.id

我想在 OrientDB 中重现相同的查询。请注意,createdBy 不是边,而是 "link" 属性.

如果要向关系添加属性,则需要进行更新(这不是普通查询)。如果您执行 "selec...from...where...",您将不会更新。

试试这个(你可以在文档中看到更多信息):

UPDATE <class>|cluster:<cluster>|<recordID>
[SET|INCREMENT|ADD|REMOVE|PUT <field-name> = <field-value>[,]*]|[CONTENT|MERGE <JSON>]
[UPSERT]
[RETURN <returning> [<returning-expression>]]
[WHERE <conditions>]
[LOCK default|record]
[LIMIT <max-records>] [TIMEOUT <timeout>]

您可以使用此查询

select *,createdBy.username from V_MyClass

希望对您有所帮助。