表employee和orders,使用sql命令检索订单人数最多的前三名职工的职工号,姓名和订单数

表employee和orders,使用sql命令检索订单人数最多的前三名职工的职工号,姓名和订单数答案是SELECTTOP3Orders.职工号,Employee.姓名,... 表employee和orders,使用sql命令检索订单人数最多的前三名职工的职工号,姓名和订单数
答案是
SELECT TOP 3 Orders.职工号, Employee.姓名, COUNT(*) AS 订单数;
FROM employee INNER JOIN orders ;
ON Employee.职工号 = Orders.职工号;
GROUP BY Orders.职工号;
  ORDER BY 订单数 DESC;
  INTO TABLE newcoun.dbf

表结构是
orders:职工号 C,供应商号 C,订购单号 C,订购日期 ,金额 N
employee:仓库号C,职工号C,姓名C,性别C,出生日期D,民族C,工作日期 D,婚否L,职称C,工资N2

我写的是,
SELECT TOP 3 Orders.职工号, Employee.姓名, COUNT(orders.订购单号) AS 订单数;
FROM employee INNER JOIN orders ;
ON Employee.职工号 = Orders.职工号;
ORDER BY 订单数 DESC;
  INTO TABLE newcoun.dbf

错了吗???
展开
 我来答
badkano
2013-03-06 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144777 获赞数:885360
团长

向TA提问 私信TA
展开全部
没错,其实差别就在 COUNT(orders.订购单号) AS 订单数 和
COUNT(*) AS 订单数

他俩的唯一区别就是,如果有订单号为NULL的情况下COUNT(orders.订购单号)不把这个空计算在内,而COUNT(*)则把这个空值也算做有效
追问
可是这样,在做vf试题时。它就没给我分!
追答
批卷的人的问题,不用太纠结这事,有的老师就是按标准答案来看,错了就不给分,兴许老师自己没空,不知道找哪个人帮着批阅的呢。有的时候多相信一下自己的实力
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式