我有表格tags
,我还要从表格questions
计算所有在tags
列中tag
名称来自{{1}的行数据库。
结合我的两个问题:
tags
答案 0 :(得分:0)
您必须至少有一个共同的字段,使用它来关联表:
SELECT t.name,q.COUNT(*) FROM questions q, tags t WHERE `tags`
LIKE t.name and q.tag=t.name;
答案 1 :(得分:0)
SELECT t.name, Count(*) FROM tags t
join questions q on t.tag_id = q.tag_id
Where t.name like '%(the tag column from tags table)%'
group by t.name
如果您正在寻找Batches of SQL Statements
然后你可以通过在第一次查询结束时放置;
来做这样的事情
SELECT * FROM `tags` WHERE 1 ;
SELECT COUNT(*) FROM `questions` WHERE `tags`
LIKE '%(the tag column from tags table)%'
答案 2 :(得分:0)
有点不清楚问题是什么,但这是我猜的。从标签表中选择所有行,并为每个标签计算问题表中出现的次数:
select tags.*,
(select count(*) from question
where question.tags like '%' || tags.tag || '%')
from tags
||
是ANSI SQL for concat。一些dbms产品有自己的方式,例如concat(str1, str2)
。