数据库用的是 mysql表1 table1
nameid name
1 张三
2 王二
3 李四
表2 table2
id name
1 张三,李四,王二
2 王二,赵五
3 张三,王二求助:统计表1里 name字段里的数据 在表2里出现的次数,并得到如下结果
nameid name namecount
1 张三 2
2 王二 3
3 李四 1请把完整的查询语句写出来。 表结构已经固定了,不能再修改了。
而且只能用使用与mysql相关的sql查询语句
nameid name
1 张三
2 王二
3 李四
表2 table2
id name
1 张三,李四,王二
2 王二,赵五
3 张三,王二求助:统计表1里 name字段里的数据 在表2里出现的次数,并得到如下结果
nameid name namecount
1 张三 2
2 王二 3
3 李四 1请把完整的查询语句写出来。 表结构已经固定了,不能再修改了。
而且只能用使用与mysql相关的sql查询语句
as total from t1 a
select a.nameid,a.name,count(b.id)
from t1 a left join t2 b on find_in_set(a.name,b.name)>0
group by a.nameid,a.name
+--------+--------+-----------+
| nameid | name | namecount |
+--------+--------+-----------+
| 1 | 张三 | 2 |
| 2 | 王二 | 3 |
| 3 | 李四 | 1 |
+--------+--------+-----------+
比如 表1里有个
nameid name
5 张三疯
在表2里出现了8次
按照4楼的查询结果统计把张三疯出现的8次加到 张三上去了,却得到了下面的结果 +--------+--------+-----------+
| nameid | name | namecount |
+--------+--------+-----------+
| 1 | 张三 | 10 |
| 2 | 王二 | 3 |
| 3 | 李四 | 1 |
+--------+--------+-----------+