小编dor*_*010的帖子

如何在BigQuery中查找数组中的元素

我试图在数组中搜索具有某些键值对的行.我的BigQuery表中的一行看起来像这样.

{
  "ip": "192.168.1.1",
  "cookie" [
    {
      "key": "apple",
      "value: "red"
    },
    {
      "key": "orange",
      "value: "orange"
    },
    {
      "key": "grape",
      "value: "purple"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我考虑使用隐式UNNEST或CROSS JOIN,如下所示,但它不起作用,因为取消它只会创建多个不同的行.

SELECT ip
FROM table t, t.cookie c
WHERE (c.key = "grape" AND c.value ="purple") AND (c.key = "orange" AND c.value ="orange")
Run Code Online (Sandbox Code Playgroud)

这个链接非常接近我想做的事情,除非它们正在使用legacy SQL而不是standardSQL

sql google-bigquery

9
推荐指数
2
解决办法
1万
查看次数

有没有一种简单的方法可以将 BigQuery 中的行转换为 JSON?

我正在尝试将 BigQuery 表中的行减少为 JSON 字符串。在标准 SQL 中是否有一种快速的方法可以做到这一点?

我想过用用户定义的函数调用js,但它迫使我声明UDF的输入类型,所以我不能概括这个函数。

google-bigquery

7
推荐指数
2
解决办法
1万
查看次数

如何在BigQuery Ruby API中设置BillingTier?

我的一些查询返回billingTierLimitExceeded错误并进行故障排除,这会导致我发送文档,告诉我更改查询作业的配置.

configuration.query.maximumBillingTier在REST API中找到了它,但没有找到Ruby客户端库.

如何configuration.query.maximumBillingTier使用Ruby SDK进行设置?

ruby google-bigquery

6
推荐指数
1
解决办法
134
查看次数

你如何比较BigQuery中的两个数组?

我正在尝试连接两个表,每个表都有一个如下所示的数组列

SELECT a.id, b.value
FROM a INNER JOIN b
ON a.array IN b.array
Run Code Online (Sandbox Code Playgroud)

要么

SELECT a.id, b.value
FROM a INNER JOIN b
ON UNNEST(a.array) IN UNNEST(b.array)
Run Code Online (Sandbox Code Playgroud)

根据这个问题,postgres有像<@> @这样的运算符来比较是否是另一个数组的子集( postgres doc页面),但是BigQuery只允许将数组的元素与其他数组进行比较,如下所示

a.arrayelement IN UNNEST(b.array)
Run Code Online (Sandbox Code Playgroud)

可以在BigQuery中完成吗?

编辑

这是我正在使用的架构

WITH b AS (
    {  "ip": "192.168.1.1",
      "cookie": [
        { "key": "apple",
          "value: "red"
        },
        { "key": "peach",
          "value: "pink"
        },
        { "key": "orange",
          "value: "orange"
        }
      ]
    }
    ,{  "ip": "192.168.1.2",
      "cookie": [
        { "key": "apple", …
Run Code Online (Sandbox Code Playgroud)

google-bigquery

6
推荐指数
2
解决办法
2361
查看次数

gtag.js和gtm.js可以互换吗?

嗨,我是Google跟踪代码管理器的新手,

我正在尝试将Google Adwords转换像素添加到我们的网站,并且google告诉我应该添加以下代码段。

  gtag('event', 'conversion', {
      'send_to': 'AW-1000000/XXXXXXXX’,
      'event_callback': callback
  });
Run Code Online (Sandbox Code Playgroud)

由于我们的网站已经在使用gtm.js

我可以将上面的代码片段转换为以下代码以获得相同的效果吗?

dataLayer.push({ “event”: “conversion”, 
“send_to”: “AW-1000000/XXXXXXXX”, “event_callback”: undefined})
Run Code Online (Sandbox Code Playgroud)

javascript google-analytics google-tag-manager

5
推荐指数
1
解决办法
1633
查看次数

有没有一种快速的方法可以一次编辑多个 yaml 文件?

我有大约 30 个 yaml 文件用作配置,但文件中的属性仍在开发中。因此,有时必须添加新属性。

将相同的属性添加到所有不同的文件会很乏味,有没有快速的方法/工具?

vim yaml

3
推荐指数
1
解决办法
429
查看次数

如何在 BigQuery 中查询分区表

我只是在 BigQuery 上阅读分区表,无法找出最佳实践部分。我尝试运行以下

#standardSQL
SELECT *
FROM `myproject.affiliate.log_20170101`
WHERE _PARTITIONTIME BETWEEN TIMESTAMP_TRUNC(TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 * 24 HOUR),DAY)
AND TIMESTAMP_TRUNC(CURRENT_TIMESTAMP(),DAY);
Run Code Online (Sandbox Code Playgroud)

基于此文档链接

但我收到这个错误,

Error: Unrecognized name: _PARTITION_TIME;
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?这与通配符查询有何不同?

google-bigquery

1
推荐指数
1
解决办法
4229
查看次数