0
外部选择中的字段c.Mcc和c.Mnc没有得到填充事件,尽管我在bd:RawDebug.CarrierDetails中有这些字段。从左连接中的第二个表中选择字段
任何帮助,将不胜感激。
SELECT d.Id, d.DebugReason, d.DebugData, d.d1, d.d2, c.Mcc, c.Mnc
FROM
(SELECT
Id, DebugReason, DebugData,
INTEGER(SUBSTR(DebugData,0,3)) AS d1,
SUBSTR(REGEXP_REPLACE(DebugData,'[^a-zA-Z0-9]',' '),4,LENGTH(DebugData)-3) as d2
FROM TABLE_DATE_RANGE([bd:RawDebug.T],TIMESTAMP('2016-05-16'),TIMESTAMP('2016-05-16'))
WHERE DebugReason = 50013 and Id = 550661626 LIMIT 50) AS d
LEFT JOIN
(
SELECT Network, Mcc, STRING(Mnc) as Mnc from [bd:RawDebug.CarrierDetails]
) AS c
ON c.Mcc = d.d1 and c.Mnc = d.d2
LIMIT 50
当你使用'left outer join'时,右表中的字段可以是'NULL'。对于一个测试,你应该在'limit 50'之前加上'where c.MCC不为空'并且看看结果是否有 –
这可能是你在CarrierDetails中有这些字段的情况,但是连接正在寻找来自如果我没有弄错的话,选择d是由一个Id-550661626限制的。 – Chris
对于Id = 550661626,我得到d.d1为310,d.d2为410.在CarrierDetails表中,我有一个入口形式Mcc = 310 Mnc = 410.但我想知道为什么c.Mcc和c.Mnc没有得到满足。 – user3447653