我需要选择另一个表中的表的所有ID,但可以包含更多单词。 例如:
tab1
Hello
Helloo
Hellooo
Helloooo
tab2
Hello
我需要的结果是:
姓名:你好
数:4
我需要做类似的事情:
select count(*) as counted, id from tab1 where id like "helo%"
但是where
子句需要是tab2中的ID加上最后的%。
表1:
`ID`: hello
`ID`: hello1
`ID`: hello2
`ID`: hello3
`ID`: hello4
`ID`: hello5
`ID`: yelo5
表2:
`ID`: hello
`ID`: yelo
现在,我需要的是计算并显示如下:
ID
:你好|数:6
ID
:yelo |数:1
答案 0 :(得分:0)
这应该是你要找的东西
<强> MYSQL 强>
SELECT count(*) FROM tab1 as Count_1
WHERE id LIKE '%hello%'
UNION
SELECT count(*) from tab2 as Count_2
WHERE id LIKE '%yelo%'
GROUP BY id;
<强> RESULT 强>
COUNT(*)
6
1
所以我认为你试图计算表1中出现ID匹配'hello ...'的次数以及表2中出现ID匹配'yelo ..'的次数。
答案 1 :(得分:0)
SELECT count(*) FROM tab1 as Count
LEFT JOIN tab2
ON tab1.id=tab2.id
WHERE column like '%Hello%'
答案 2 :(得分:0)
试试这个
select t1.ID,count(*) from tab1 t,tab2 t1 where t.ID like
CONCAT('%',t1.ID, '%') group by t1.na