代码之家  ›  专栏  ›  技术社区  ›  wpfwannabe

将C中的查询参数作为参数传递给BigQuery中的in运算符的正确方法

  •  1
  • wpfwannabe  · 技术社区  · 6 年前

    IN 接线员。我已经为此挣扎了一段时间了,我的尝试似乎没有任何效果。我想知道这样做是否可行。

    我尝试了以下语法变体:

    where state IN (@states)
    where state IN @states
    where state IN ARRAY(@states)
    where state IN (ARRAY(@states))
    

    这就是结尾:

    new BigQueryParameter("states", BigQueryDbType.Array, new[] {"AL", "CA"}),
    new BigQueryParameter("states", null, new[] {"AL", "CA"}),
    

    • 参数类型STRING和{ARRAY<中的运算符没有匹配的签名;字符串>}
    • 语法错误:应为“(”或关键字UNNEST,但得到关键字数组
    1 回复  |  直到 6 年前
        1
  •  2
  •   Alvis    6 年前

    使用 UNNEST 像这样的操作员:

    where state IN UNNEST(@states)
    

    C级#

    new BigQueryParameter("states", BigQueryDbType.Array, new[] {"AL", "CA"}) {ArrayElementType = BigQueryDbType.String},