簡體   English   中英

BigQuery 標准 SQL SELECT 行 WHERE 字段包含來自另一個表字段的單詞

[英]BigQuery Standard SQL SELECT rows WHERE field contains words from another table field

我在 BigQuery 中有 2 個表。 VIDEOS 表包含視頻名稱和標簽。 CREATORS 表包含有關視頻創作者的信息。 VIDEOS.tags 字段包含逗號分隔的帶引號的字符串。

我需要在 CREATORS 表中選擇所有標有名稱的視頻,結果如下所示:

Title 1, Creator 1
Title 2, Creator 2
Title 3, Creator 2
Title 4, Creator 3
Title 5, Creator 3
...

但是我下面的內容在 BigQuery 中沒有返回任何結果。

SELECT
    B.name AS Title,
    C.creator_name AS Creator
FROM `project.database.VIDEOS` AS B, `project.database.CREATORS` AS C
WHERE B.tags LIKE CONCAT('%"', C.creator_name ,'"%')

在這種情況下,通常是因為情況不同 - 嘗試

WHERE LOWER(B.tags) LIKE CONCAT('%"', LOWER(C.creator_name) ,'"%')

我想你想要反過來:標簽必須看起來像名字。 讓我知道

SELECT
    B.name AS Title,
    C.creator_name AS Creator
FROM `project.database.VIDEOS` AS B, `project.database.CREATORS` AS C
WHERE C.creator_name LIKE CONCAT('%"', B.tags ,'"%')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM