BigQuery 标准 SQL SELECT 行 WHERE 字段包含来自另一个 table 字段的词
BigQuery Standard SQL SELECT rows WHERE field contains words from another table field
我在 BigQuery 中有 2 个 table。 VIDEOS table 包含视频名称和标签。 CREATORS table 包含有关视频创作者的信息。 VIDEOS.tags 字段包含逗号分隔的带引号的字符串。
我需要 select 所有在 CREATORS table 中用名称标记的视频,结果如下所示:
Title 1, Creator 1
Title 2, Creator 2
Title 3, Creator 2
Title 4, Creator 3
Title 5, Creator 3
...
但是我下面的内容 return 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 ,'"%')
我想你希望反过来:标签必须看起来像名字。让我知道
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 ,'"%')
在这种情况下,通常是因为情况不同 - 尝试
WHERE LOWER(B.tags) LIKE CONCAT('%"', LOWER(C.creator_name) ,'"%')
我在 BigQuery 中有 2 个 table。 VIDEOS table 包含视频名称和标签。 CREATORS table 包含有关视频创作者的信息。 VIDEOS.tags 字段包含逗号分隔的带引号的字符串。
我需要 select 所有在 CREATORS table 中用名称标记的视频,结果如下所示:
Title 1, Creator 1
Title 2, Creator 2
Title 3, Creator 2
Title 4, Creator 3
Title 5, Creator 3
...
但是我下面的内容 return 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 ,'"%')
我想你希望反过来:标签必须看起来像名字。让我知道
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 ,'"%')
在这种情况下,通常是因为情况不同 - 尝试
WHERE LOWER(B.tags) LIKE CONCAT('%"', LOWER(C.creator_name) ,'"%')