关于记录不匹配的多表查询?
为方便起见,只列举必要字段
有一个文章表article,记录文章的属性,
字段如下
title nchar(100)
以及一个访问记录表visit,记录每篇文章的一次访问
字段如下
title nchar(100),
visit_time datetime
因为一篇文章在录入article之后,可能暂时没有人访问
所以,article表中的记录在visit表中不一定存在匹配记录
如果我要查询article表中所有文章的访问记录,结果如下
title visit_count
文章A 11
文章B 6
文章C 0
文章D 0
sql语句应该如何写?望大侠指导。
------解决方案--------------------select
a.title,
(select count(*) from visit where title=a.title ) visit_count
from article a
------解决方案--------------------select
a.title,
isnull(b.visit_count,0) visit_count
from article a
left join
(
select title,count(*) visit_count
from visit
group by title
) b
on a.title=b.title