[英]BigQuery - operations on multiple columns sharing same substring on name
我有幾個表,其中的列名如下:
共享相同子字符串的列數可能因表而異。
對於每個表,我必須執行包含以下操作的查詢:
ROW_NUMBER() OVER (PARTITION BY name, surname, description,
CAST(FLCOLY01 AS STRING), CAST(FLCOLX01 AS STRING),
CAST(FLCOLY02 AS STRING), CAST(FLCOLX02 AS STRING),
CAST(FLCOLY03 AS STRING), CAST(FLCOLX03 AS STRING),
...
CAST(FLCOLYn AS STRING), CAST(FLCOLXn AS STRING)
ORDER BY date ASC)
CASE WHEN FLCOLX01 = 125 THEN VALUE_1
WHEN FLCOLX02 = 125 THEN VALUE_2
WHEN FLCOLX03 = 125 THEN VALUE_3
WHEN FLCOLX04 = 125 THEN VALUE_4
WHEN FLCOLX05 = 125 THEN VALUE_5
WHEN FLCOLX06 = 125 THEN VALUE_6
WHEN FLCOLX07 = 125 THEN VALUE_7
ELSE NULL END AS FLCOLX125
有沒有更好的方法來編寫這些查詢?
據我所知,別無選擇,因為您需要一個輸出列來為不同的字段提供優先級。
你的方法是正確的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.