【问题标题】:selecting where in multiple columns on ANSI SQL (IMPALA SQL)在 ANSI SQL (IMPALA SQL) 的多列中选择位置
【发布时间】:2022-11-22 14:27:53
【问题描述】:

它在 Oracle SQL 中正常工作,但在 ANSI SQL 中不起作用。

SELECT whatever WHERE (col1,col2) IN ((val1, val2), (val1, val2), ...)

如何用 ANSI SQL (IMPALA SQL) 编写代码?

我不想要下面的代码,因为有很多列表。

WHERE (col1 = val1a AND col2 = val2a)
   OR (col1 = val1b AND col2 = val2b)
   ...

谢谢你!

(前任) https://dba.stackexchange.com/questions/34266/selecting-where-two-columns-are-in-a-set

我们可以在ANSI sql中进行流畅的操作。

【问题讨论】:

    标签: python sql where-clause impala ansi


    【解决方案1】:

    这在蜂巢或黑斑羚中是不可能的。只有“其他”解决方法是 concat()。
    您可以使用下面的 sql-

    ...
    where concat(col1,col2) IN (concat(val1,val2),concat(val3,val4)...)
    

    请注意,如果 col1/col2 为 null,则不会匹配。

    【讨论】:

      猜你喜欢
      • 2012-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      • 2011-03-01
      • 1970-01-01
      相关资源
      最近更新 更多