sql语句怎么写?
没学过SQL,学C#的时候用到的,不知如何写,有两个表:"部门"表中有两个字段:部门号"Did",部门名"DName""职工"表中有几个字段,姓名"SName",性别,部...
没学过SQL,学C#的时候用到的,不知如何写,
有两个表:
"部门"表中有两个字段:部门号"Did",部门名"DName"
"职工"表中有几个字段,姓名"SName",性别,部门号"Did",等
现在要查每个部门有多少个职工,写了个SQL:
string sql="select DName,count(SName) where 部门,职工 group by 职工.SName",执行时报错。没学过SQL,哪位说的简单一些,该怎么写?
select Dname,count(SName) from 部门,职工 where 部门.Did=职工.Did group by 职工.did
结果是:选择列表中的 部门.Dname无效,因为该列没有包含在聚会函数或group by子句中
再写成select Dname,count(SName) from 部门,职工 where 部门.Did=职工.Did group by 职工.did,Dame后,又发现如果部门职工数为0的话显现不出来,我的目的主要是看有哪些部门。 展开
有两个表:
"部门"表中有两个字段:部门号"Did",部门名"DName"
"职工"表中有几个字段,姓名"SName",性别,部门号"Did",等
现在要查每个部门有多少个职工,写了个SQL:
string sql="select DName,count(SName) where 部门,职工 group by 职工.SName",执行时报错。没学过SQL,哪位说的简单一些,该怎么写?
select Dname,count(SName) from 部门,职工 where 部门.Did=职工.Did group by 职工.did
结果是:选择列表中的 部门.Dname无效,因为该列没有包含在聚会函数或group by子句中
再写成select Dname,count(SName) from 部门,职工 where 部门.Did=职工.Did group by 职工.did,Dame后,又发现如果部门职工数为0的话显现不出来,我的目的主要是看有哪些部门。 展开
3个回答
展开全部
--保留部门,用left join
string sql="select a.DName,count(b.SName) SName_Cnt
from 部门 a
left join 职工 b
on a.did = b.did
group by a.DName
"
--改成这样就可以了!
语法:
select ..
from ..
where ..
group by
order by ..
;
string sql="select a.DName,count(b.SName) SName_Cnt
from 部门 a
left join 职工 b
on a.did = b.did
group by a.DName
"
--改成这样就可以了!
语法:
select ..
from ..
where ..
group by
order by ..
;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
语句:
select DName,count(SName) from 部门 a
left join 职工 b on a.did=b.did
group by a.DName
---------------------
上述就能解决你的需求,为啥这样写,可以查看SQL帮助文档 “SELECT 语句”的用法,应该有配套类似的范例
select DName,count(SName) from 部门 a
left join 职工 b on a.did=b.did
group by a.DName
---------------------
上述就能解决你的需求,为啥这样写,可以查看SQL帮助文档 “SELECT 语句”的用法,应该有配套类似的范例
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select DName,count(SName)
from 部门,职工
where 部门.Did=职工.Did
group by 部门.DName
你少了from子句
写错了
from 部门,职工
where 部门.Did=职工.Did
group by 部门.DName
你少了from子句
写错了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询