请教大家一个问题:我有两个数据表 banjixxb和xueshengxxbbanjixxbbanjibh banjimc
------- -----------
ds01 电算1班
ds02 电算2班
ds03 电算1班
xueshengxxbbanjibh xuehao xingming xingbie
------- --------- --------
ds01 0001 扎三 男
ds01 0002 天三 女
ds02 0003 王武 女
如何实现如下查询结果:
banjibh banjimc banjirs
------- --------- -------
ds01 电算1班 2
ds02 电算2班 1
ds03 电算1班 0
------- -----------
ds01 电算1班
ds02 电算2班
ds03 电算1班
xueshengxxbbanjibh xuehao xingming xingbie
------- --------- --------
ds01 0001 扎三 男
ds01 0002 天三 女
ds02 0003 王武 女
如何实现如下查询结果:
banjibh banjimc banjirs
------- --------- -------
ds01 电算1班 2
ds02 电算2班 1
ds03 电算1班 0
有三个字段
班级编码,班级名称,人数insert into a(班级编码,人数)
select banjibh,count(distinct xuehao)
from xueshengxxb
group by banjibh第一,三咧就有了,
地二列update 一下就行了吗
你应该会的
搞定,给分吧
FROM banjixxb LEFT OUTER JOIN xueshengxxb
ON banjixxb.banjibh = xueshengxxb.banjibh
GROUP BY banjibh , banjimc注这里用Left是左关联,意思是以左边的表为主,这样就不会漏数据了
FROM banjixxb , xueshengxxb
where banjixxb.banjibh = xueshengxxb.banjibh(+)
GROUP BY banjibh , banjimc
------- --------- ------- --------
ds01 电算1班 2 1
ds02 电算2班 1 1
ds03 电算1班 0 0