[英]OrientDB - Get network at level 2
我正在為一個大型的專業社交網絡工作,我們開始檢查OrientDB是否符合“社交圖譜”方面的要求。 到目前為止,我們已經成功部署了一個由10個節點組成的集群,設置了備份以及將所有數據從MongoDB還原並填充到OrientDB並沒有出現重大問題。 我們的數據模型是:
我想知道的是:
SELECT out('Followed').out('Followed') as friend FROM 14:4
,其中14:4是配置對象。 不幸的是,它給了我個人資料和公司,因為個人資料可以“跟隨”公司。 如何過濾以僅獲取個人檔案? 我已經嘗試SELECT out('Followed').out('Followed') as friend FROM 14:4 where @class = 'Profile'
但它不起作用:(我應該有多個邊緣類( SELECT out('Followed').out('Followed') as friend FROM 14:4 where @class = 'Profile'
)簡化查詢? 非常感謝。
1)您可以嘗試
SELECT FROM (SELECT expand(out('Followed').out('Followed')) as friend FROM 14:4) Where @class='Profile'
2)我認為邊緣的屬性(謝謝)更好
3)您可以使用shortestPath函數( http://www.orientechnologies.com/docs/last/orientdb.wiki/SQL-Functions.html ):
例:
select shortestPath(#8:32, #8:10, 'BOTH')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.