【问题标题】:Logical operators relevance in XQueryXQuery 中的逻辑运算符相关性
【发布时间】:2014-05-28 02:23:36
【问题描述】:

在 XQuery 中哪个操作更相关:AND 或 OR?

例如:(a and b or c) 等于 1 o 2?

  1. (a 和 b)或 c
  2. a 和(b 或 c)

干杯, 黛博拉

【问题讨论】:

  • 我不知道 xquery 但 THIS 说应该是 (a and b) or c

标签: xquery logical-operators relevance


【解决方案1】:

我猜“更相关”是指其他人所说的“绑定更紧密”或“具有更高优先级”。在 XQuery 中,a and b or c 被解析为 (a and b) or c,而不是 a and (b or c)

这可以在the XQuery grammar 的作品 46 和 47 中看到:

[46] OrExpr ::= AndExpr ( "or" AndExpr )*

[47] AndExpr ::= ComparisonExpr(“和”ComparisonExpr)*

它也可以通过计算表达式false() and true() or true() 在 XQuery 引擎中展示。通过重新排序表达式并计算 true() or true() and false(),可以看出这是运算符优先级而不是从左到右计算的结果。

【讨论】:

    猜你喜欢
    • 2020-04-14
    • 2014-10-22
    • 2020-12-20
    • 1970-01-01
    • 1970-01-01
    • 2019-03-15
    • 2022-01-20
    • 2012-09-02
    相关资源
    最近更新 更多