使用 Big Query 将 firebase event_params 键值数据显示到单行中

2023-11-29

我正在尝试对 Firebase 存储的事件执行 Google BigQuery。我已经执行了以下查询

SELECT * FROM `myTable` LIMIT 6

其结果如下:

+-----+----------+--------+------------------+---------------------------------+
| Row |   date   |  name  | event_params.key | event_params.value.string_value |
+-----+----------+--------+------------------+---------------------------------+
|   1 | 20200922 | Event1 | errorName        | BLE_Not_connected               |
|     |          |        | appDetails       | 2.2.2                           |
|     |          |        | errorDetails     | iOS-Error                       |
+-----+----------+--------+------------------+---------------------------------+

所以,这里 row-1 有多个条目event_params.key他们的价值体现在event_params.value.string_value柱子。现在,我想执行一个 Google Big-Query 来扁平化event_params.key列值并在下面显示结果

+-----+----------+--------+------------------+---------------------------------+
| Row |   date   |  name  | errorName        | appDetails  | errorDetails      |
+-----+----------+--------+------------------+---------------------------------+
|   1 | 20200922 | Event1 | BLE_Not_connected| 2.2.2       | iOS-Error         |
+-----+----------+--------+------------------+---------------------------------+

有人可以帮助我吗?提前致谢。


以下是 BigQuery 标准 SQL

EXECUTE IMMEDIATE (
  SELECT """
  SELECT date, name, """ || 
    STRING_AGG("""MAX(IF(key = '""" || key || """', value.string_value, NULL)) AS """ || key, ', ') 
  || """
  FROM `project.dataset.table` t, t.event_params
  GROUP BY date, name
  """
  FROM (
    SELECT DISTINCT key
    FROM `project.dataset.table` t, t.event_params
  )
);     

如果适用于您的问题中的样本数据 - 输出是

Row date        name    errorName           appDetails  errorDetails     
1   20200922    Event1  BLE_Not_connected   2.2.2       iOS-Error    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Big Query 将 firebase event_params 键值数据显示到单行中 的相关文章

随机推荐

  • 从 C 中的命令行捕获可变长度字符串

    我到处寻找问题的答案 但尚未找到问题的可靠答案 我目前正在用 C 语言编写一个程序 专门针对 UNIX 命令行 我使用 Linux 作为我的开发环境 但我希望这个程序尽可能可移植 现在 我有一个提示用户输入的基本 shell 然后 用户将输
  • 如何放松对已知变体的嵌套匹配的非详尽模式检查?

    我如何说服 Rust 编译器内部match这里的表达很好 因为外部match已经限制了可能的类型 enum Op LoadX LoadY Add fn test o Op match o Op LoadX Op LoadY gt do so
  • javascript onkeydown - event.which 只给出大写字符的问题

    我编写了一段 JavaScript 代码来在文本区域内按下按键 我已使用 onkeydown 事件来捕获按下的键 并在触发事件时调用函数 在函数中 我使用 event which 来按下按键 但这并没有给出正确的按键按下 对于按下的任何字符
  • 日期格式 yyyy-MM-ddTHH:mm:ssZ

    我认为这应该很简单 但无法得到它 在此格式中 Z 是时区 T 是长时间模式除了使用之外 我怎样才能获得这种格式的日期 DateTime dt DateTime Now Console WriteLine dt ToString yyyy M
  • Magento“忘记密码”电子邮件以错误的语言发送

    我有一个具有多种语言的 Magento 网站 我已经设置了语言包 网站上的所有内容似乎都能正确翻译 交易电子邮件也以正确的语言发送除了 忘记密码 始终以德语发送的电子邮件 这就是我所做的 安装语言包并确保所有模板和文件夹结构正确 例子 ap
  • R Shiny:如何在 NULL 时不显示绘图

    如果您在 R 工作室中运行此代码 您会发现 NULL 数据的绘图仍然是一大块白色 数据为NULL时怎么不显示呢 在其他图表中 大白板看起来不太好 library shiny server lt function input output o
  • 在递归 CTE 下控制同级顺序?

    我有一个 CTE 查询 用于查找主叶和子叶 但我无法控制叶子选择顺序2个兄弟姐妹之间 表中的每一行声明为 childID INT parentID INT NAME NVARCHAR 30 location int Where locati
  • WordPress 中每页的自定义 CSS

    大家早上好 我为我们网站内的某些页面创建了不同的背景和一些其他图像 目前 以下代码与我们网站上的 儿童 页面配合良好
  • jsonp 调用中的错误仅来自 firefox-extension

    我的错误的奇怪之处在于它只发生在我在这篇文章底部链接到的 firefox 扩展中 我无法在任何其他设置中重现此错误 我有这个ajax请求 ajax type GET dataType jsonp url url jsonpCallback
  • Kubernetes docker 容器中的前端 Vue.js 应用程序无法连接到后端

    I have built a front end Vue js application running on a docker container under kubernetes environment the backend is al
  • 防止其他人调用您的 JSON Web 服务

    假设我有一些代码可以通过 JSON 服务调用创建 HTML 页面 如何防止其他人复制粘贴源代码 调用服务并获取第一个用户的结果集 如果我将域作为服务的参数或获取其他内容 例如用户名或密码 它们也可以被复制和粘贴并用于另一个域 我没有找到阻止
  • 在 C 中将 & (addressof) 与 const 变量一起使用

    教科书上说 addressof 运算符不适用于不能应用于表达式 常量 或寄存器变量 常量是否仅意味着 A 7 等文字或也用 const 关键字声明的变量 我认为这仅意味着文字 因为以下代码已编译 int main const int i 1
  • 如何使用会员验证密码事件处理程序?

    使用 asp 创建新用户时 有什么方法可以对密码选择进行一些限制吗 网会员 条件喜欢 密码强度 至少 8 个字符 并强制执行字符复杂性 即 不包含用户的帐户名 长度至少为八个字符 包含以下四个类别中三个类别的字符 英文大写字符 A 到 Z
  • 从现在开始下一个月的 10 号?

    我正在尝试查找从今天开始的下一个月的 10 号 因此 如果今天是 5 月 27 日 那么下一个 10 日就是 6 月 10 日 例如 如果今天是 8 月 1 日 那么接下来的 10 日将是 8 月 10 日 我知道我可以使用找到下个月的第一
  • Java - 对非静态字段列表进行静态引用

    我刚刚进行了实验 发现当我运行滚动代码时 它无法编译 我不明白为什么 我的 IDE 说 无法对非静态字段列表进行静态引用 但我不太明白这是什么或为什么 它还适用于什么 即 它只是私有变量和 或方法吗 为什么 public class MyL
  • 加速度计移动的距离

    我想通过移动 iPhone 来移动 iPhone 屏幕上的对象 矩形 圆形等 例如 我沿 X 轴移动 iPhone 物体也沿 X 轴移动 Y Z轴同样如此 我怎样才能做到这一点 我可以得到它的算法吗 谢谢 附 我看了一会儿 似乎可以使用加速
  • 无法使用Python登录亚马逊

    我正在使用 Python 3 编写一个脚本来登录 Amazon 以获取我的 Kindle 亮点 它基于这篇文章 https blog jverkamp com 2015 07 02 scraping kindle highlights 我无
  • iOS8 AVAudioEngine 如何通过多点连接发送麦克风数据?

    我想通过多点连接 iOS 8 发送麦克风音频数据 并通过接收方的扬声器播放它 我还设置了 AVAudioEngine 并且可以从 上方 扬声器输出听到麦克风数据 但我不知道如何通过网络发送 AVAudioPCMBuffer 这是我的代码片段
  • 全局变量的值在 ValueEventListener 中初始化后会重置

    我有一个名为 bg 的全局变量 它在 firebase 数据库引用 myRef 的 ValueEventListener 内初始化 但是 如果我尝试在 valueeventlistener 块之外使用变量的值 则该变量为空 就好像被重置了一
  • 使用 Big Query 将 firebase event_params 键值数据显示到单行中

    我正在尝试对 Firebase 存储的事件执行 Google BigQuery 我已经执行了以下查询 SELECT FROM myTable LIMIT 6 其结果如下 Row date name event params key even