所以我有两张桌子:
节日表:列 NAME
---------------------
NAME
---------------------
1. ultra music
2. coachella
和Querydata列: QUERY
----------------------
QUERY
----------------------
1. xyz
2. coachella festival
3. abc
4. ultra music festival
所以我想计算querydata
表中每个节日的所有出现次数。
我的意思是我可以通过Querydata
表格搜索每个节日名称,但我真的很想找到方便的方法。
SELECT QUERY FROM QUERYDATA
WHERE QUERY LIKE '%coachella%'
AND QUERY LIKE '%festival%'
请帮助我,我真的被困在这一个! 干杯
答案 0 :(得分:2)
你可以这样做:
select f.name, count(*)
from querydata qd join
festivals f
on qd.query like '%' || f.name || '%'
group by f.name;
注意:这假设名称没有重叠。 "圣诞"和#34;平安夜"可能导致意外的重复。
答案 1 :(得分:0)
使用其他答案中提到的like
或instr
,如下所示:
select t1.name, count(*)
from festival t1 inner join Querydata t2 on instr(t2.query, t1.name) > 0
group by t1.name;