这个SQL语句怎么写?急!!

OMyDoG 2002-12-13 01:33:48
我两个表,一个是关于文章的表(含有作者字段),另外一个是作者资料的表,现在我是要统计在这个作者表中的每个人所发表的文章数是多少,在文章表里有些作者字段是包含多个作者的,我是想用like写模糊查询,怎么写??


select writer,count(*) from 文章表 where writer like ...这里怎么写...
...全文
24 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cooldht 2002-12-13
  • 打赏
  • 举报
回复
zsdfg
大健 2002-12-13
  • 打赏
  • 举报
回复
多了角就散分吧:)
OMyDoG 2002-12-13
  • 打赏
  • 举报
回复
发现多了角了
OMyDoG 2002-12-13
  • 打赏
  • 举报
回复
成功解决:

select 作者表.name as writer,count(*) as cnt from 文章表,作者表 where 文章表.writer like '%'+作者表.name+'%' group by 作者表.name order by cnt
大健 2002-12-13
  • 打赏
  • 举报
回复
SELECT a.作者名
,(SELECT COUNT(*) FROM 文章的表 b
WHERE b.作者列表 LIKE '%' + a.作者名 + '%') AS 文章数
FROM 作者资料的表 a
wolve 2002-12-13
  • 打赏
  • 举报
回复
首先你的逻辑有点问题,不能统计所有的作者。
分析:
1.如果是一般查询,writer没有意义,文章表中的作者字段是多个什么作者的集合,这个结果没有意思。该查询只能统计某一个作者发表了多少文章
select count(*) form 文章表 where writer like '%writeValue%'

2.考虑子查询:
select 作者表.write,count(*) form 作者表 exists (select 文章表 .write form 文章表 where 文章表.write like %作者表..write)
group by 作者表.write
这个查询仍有存在问题,统计的结果有可能只是1


3.考虑联接查询:
select 作者表.write,count(*) form 作者表 where 文章表.write like %作者表.write%
group by 作者表.write.
mmkk 2002-12-13
  • 打赏
  • 举报
回复
select 作者表.writer,count(文章表.文章ID) from 作者表 left join 文章表 on 作者表.writer like '%文章表.作者%' group by 作者表.writer
visualcpu 2002-12-13
  • 打赏
  • 举报
回复
如果你现在的文章表里有作者的名字,那就这样看看!
select count(*) from 文章表 where 作者名 like '王%'
cooldht 2002-12-13
  • 打赏
  • 举报
回复
select 作者表.writer, count(*)
from 文章表, 作者表
where 文章表.writer like '%' + 作者表.writer
group by 作者表.writer
visualcpu 2002-12-13
  • 打赏
  • 举报
回复
你在建两个这样的表:
1,发表文章的信息表
2,作者信息表
这两个表一个作者ID是一一对应的!
select count(*) from 作者表 a ,文章表 b where a.id=b.id
lilyfirstone 2002-12-13
  • 打赏
  • 举报
回复
select writer,count(*) from table where write like '%XX%' group by writer
试试吧,不知道对不对
wangchinaking 2002-12-13
  • 打赏
  • 举报
回复
select 作者表.writer, count(*)
from 文章表, 作者表
where 作者表.writer like '%' + 文章表.writer
group by 作者表.writer

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧