【发布时间】:2022-01-13 07:59:10
【问题描述】:
我正在尝试使用op:join-left-outer 函数加入两个视图“A”和“B”。
我有两个用于 JOIN 的“ON 条件”:
- 第一个是简单的
op:on函数。 (这不是我的问题的一部分) - 第二个应该是按值连接列的 ON 条件 (
$myValue)。但是op:on不支持值,只支持列引用。所以下面的代码不起作用:
let $aView := op:from-view("foobar", "A")
let $bView := op:from-view("foobar", "B")
let $myValue := "42"
let $opticQuery := op:join-left-outer(
$aView,
$bView,
(
op:on(op:view-col("A", "SOME_COLUMN"), op:view-col("B", "SOME_COLUMN")),
(: Not working pseudo code following :)
op:on(op:view-col("B", "SOME_OTHER_COLUMN"), $myValue)
)
)
在 SQL 中我会这样写:
SELECT * FROM A
LEFT JOIN B
ON A.SOME_COLUMN = B.SOME_COLUMN
AND B.SOME_OTHER_COLUMN = '42'
我的问题: 有没有办法在 Optic API 中做同样的事情,还是我做错了什么?
【问题讨论】:
标签: xquery marklogic marklogic-10