I want to select optional relationships in sql-server-2017-graph. Similar to optional in sparql e.g.:
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?name ?mbox
WHERE { ?x foaf:name ?name .
OPTIONAL { ?x foaf:mbox ?mbox }
}
from https://www.w3.org/2001/sw/DataAccess/rq23/#OptionalMatching.
And similar to LEFT JOIN in normal sql; e.g.:
SELECT name, mbox
FROM Persons
LEFT JOIN PersonMailBoxLink ON Persons.$node_id = PersonMailBoxLink.$from_id
LEFT JOIN MailBoxes ON PersonMailBoxLink.$to_id = MailBoxes.$node_id
Is there an easier way via MATCH?
のドキュメントにMATCHは、「オプションの」構成が記述されておらず、コメントには次のように記載されています。
ORandNOT演算子はMATCHパターンではサポートされていません。句で使用するMATCH他の式と組み合わせることができます。ただし、 orを使用した他の式との組み合わせはサポートされていません。ANDWHEREORNOT