在下面的XQuery语法中,我在最后一个表中添加了一个CROSS APPLY,它似乎过滤掉了一些记录。这似乎是这种情况,因为定义的节点是可选的。我认为我的代码会导致相当于LEFT OUTER JOIN,但它的行为就像一个INNER。
FROM
xxx_XML CROSS APPLY
XmlData.nodes('/reports/report/xxx-report') AS xxx(pref) CROSS APPLY
pref.nodes('summary') AS Summary(sref) CROSS APPLY
pref.nodes('data/proj-title/title-code') AS Title(tref)
有没有更好的方法来解决这个问题?
答案 0 :(得分:2)
我认为我的代码会导致 相当于LEFT OUTER JOIN, 但它表现得像INNER。
如果您希望apply的行为类似于外部联接,则可以使用outer apply
。