sql联合查询

表 A
ID(主键)---ver---mk
表 B
ver(主键)----time

要求以B表中相同time, 统计对应的表A的数量以及对应mk,ps2:查询特定年度
ps:time是varchar 格式如 20140101
查询得到下表
time-----------mk--------count
20140101 -- 模块A ------15
20140115 -- 模块A ------10
20140201 -- 模块B ------20

select ZSBDRQ,mk,count(*) as count
from YSDP_DATA inner join YSDP_VER on YSDP_VER.VER_ID=YSDP_VER.VER_ID
where SUBSTRING(ZSBDRQ,1,4)=2015
group by ZSBDRQ,mk

图片描述

以上语句出错如图,同一mk下的count均相同,求如何修改

阅读 3k
2 个回答

select time,mk,count(*) from A inner join B on A.ver=B.ver group by time,mk

select b.time, a.mk, count(*)
from table_a a
inner join table_b b on b.ver=a.ver
group by b.time, a.mk
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进