1
運行查詢時出現內部錯誤,因爲特殊情況在'WHEN'子句中包含'CASE'子句和兩個不同的字段。查詢如下:bigquery內部錯誤情況條件
SELECT
CASE WHEN site != 'a' OR geo LIKE 'NO%' THEN "test" END
FROM elc.CpEvents_agderposten
WHERE _partitiontime BETWEEN TIMESTAMP('2014-09-24') AND TIMESTAMP('2014-09-24')
相似的查詢,做工精細:
SELECT
CASE WHEN site != 'agderposten' OR geo LIKE 'NO%' THEN "test" END
FROM elc.CpEvents_agderposten
WHERE _partitiontime BETWEEN TIMESTAMP('2014-09-24') AND TIMESTAMP('2014-09-24')
-
SELECT
CASE WHEN geo LIKE 'NO%' THEN "test" END
FROM elc.CpEvents_agderposten
WHERE _partitiontime BETWEEN TIMESTAMP('2014-09-24') AND TIMESTAMP('2014-09-24')
-
SELECT
CASE WHEN site != 'a' AND geo LIKE 'NO%' THEN "test" END
FROM elc.CpEvents_agderposten
WHERE _partitiontime BETWEEN TIMESTAMP('2014-09-24') AND TIMESTAMP('2014-09-24')
-
SELECT
CASE WHEN site != 'a' THEN "test" WHEN geo LIKE 'NO%' THEN "test" END
FROM
elc.CpEvents_agderposten
WHERE
_partitiontime BETWEEN TIMESTAMP('2014-09-24')
AND TIMESTAMP('2014-09-24')
我知道最後一個例子可以用作第一個查詢的解決方法,但它不能始終應用。例如,下面的查詢失敗過:
SELECT
CASE WHEN site == 'a' and geo >= 'NO' THEN "test" END
FROM elc.CpEvents_agderposten
WHERE _partitiontime BETWEEN TIMESTAMP('2014-09-24') AND TIMESTAMP('2014-09-24')
作業ID爲第一個查詢是:CPCD-1357:bquijob_24edf89_157ae353e1e
及最近查詢:CPCD-1357:bquijob_1b26172b_157ae348938
任何人都知道如何避免這個錯誤?