【发布时间】:2015-02-16 18:15:54
【问题描述】:
Stack Overflow 的新手(以及一般的编码)。
我做了一些研究,但无法找到以下问题的答案:
如何将两个表格连接到应用于维度的函数结果,而不是维度本身?
即我想将以下两个表加入函数 lower() 的小写结果,而不是加入大小写不明确的维度。
SELECT
lower(first_name) as firstname
,lower(last_name) as lastname
,lower(email) as email1
,total_donated
From BensData.Donations As a
JOIN EACH
(Select
lower(first_name) as first
,lower(last_name) as last
,lower(email) as email2
,sum(amount) as total_donated
From BensData.Donations
GROUP BY email2, first, last) As b
ON a.email1=b.email2 AND a.firstname=b.first AND a.lastname=b.last
它不允许我加入我在第一个表 (a) 中创建的别名,但是,如果我加入表 a 中的原始维度(first_name 和 last_name),那么结果将基于大小写不明确的维度,并给出不想要的结果。
我希望这很清楚。
感谢您的帮助!
【问题讨论】:
-
请指出您正在使用的数据库系统并删除不必要的标签。您已标记 BigQuery 和 MySql。谢谢。
-
糟糕!我没有意识到 MySQL 是一个数据库!我认为那是我们编写的语言。我正在研究 BigQuery 数据库。谢谢!
标签: sql join google-bigquery case-sensitive on-clause