如何避免在Google BigQuery / SQL中的五个常见错误
Google BigQuery / SQL中五个常见错误的避免方法' (避免在 'Google BigQuery / SQL' 中的五个常见错误)
多年来与BigQuery合作,我发现有5个普遍存在的问题,即使是经验丰富的数据科学家也会犯错
Google BigQuery之所以受欢迎有很多原因。它非常快速,易于使用,提供完整的GCP套件,处理您的数据并确保尽早发现错误。此外,您还可以使用标准SQL和一些非常好用的内置函数。简而言之,几乎是完整的套餐!
永远假设存在错误和重复,永远!
然而,与其他网络服务和编程语言类似,当使用BigQuery时,有一些事项需要了解以避免陷入陷阱。多年来,我犯了很多错误,并意识到几乎所有我认识的人在某个时候都遇到过相同的问题。在这里,我想重点指出其中一些问题,因为我在职业生涯的晚期才发现这些问题,并且还发现其他非常有经验的数据科学家也遇到了相同的问题。
因此,我将向您提供我对BigQuery中几乎每个人在某个时候都会犯的5个潜在错误的排行榜,而您甚至可能都不知道这些错误。因此,请务必避免这些错误,因为每一点都可能产生严重后果,并时刻记住在处理数据时保持正确的态度:永远假设存在错误和重复,永远!
- 如何利用预先训练的视觉表达解决长期操纵问题?认识通用视觉分解器(UVD):一种用于从视频中识别子目标的现成方法
- 这个AI研究介绍了“RAFA”:一个可证明样本效率的自治LLM智能体的原则人工智能框架
- 颠覆性文件解析:与DSG相遇- 第一个可训练的分层结构提取端到端系统
1. 使用“NOT IN”时要小心
这发生得如此之快。您急于想要快速检查两个表,并查看某个表中是否存在在第二个表中提到的某个项目。既然听起来很直观,为什么不使用NOT IN语句呢?
问题在于,当您的表中存在NULL值时,NOT IN的工作方式并不如预期。如果存在NULL值,您将无法得到期望的结果!
请自行查看以下示例代码,我试图找出在input_1中存在但不在input_2中的类别:
WITH input_1 AS ( SELECT category FROM ( SELECT ["a", "b", CAST(NULL AS STRING), "d"] AS category), UNNEST(category) category ), input_2 AS ( SELECT…



