这两条语句哪个更好?

dzcdhjxyh 2009-01-05 07:07:11
这两条语句哪个更好?
为什么?
谢谢!!

1、
select t.goods_id, sum (t.Quantity * t.UnitPrice) value
from goods t
where t.company_id <> 747474
group by t.goods_id


2、
select t.goods_id, sum (t.Quantity * t.UnitPrice) value
from goods t
group by t.goods_id
having
sum (case when t.company_id=747474 then 1 else 0 end) = 0
...全文
59 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fuyou001 2009-01-05
  • 打赏
  • 举报
回复
简单说下为什么,前辈
beatyourgive 2009-01-05
  • 打赏
  • 举报
回复
第一个,先排除再group by。
mantisXF 2009-01-05
  • 打赏
  • 举报
回复
1[Quote=引用楼主 dzcdhjxyh 的帖子:]
这两条语句哪个更好?
为什么?
谢谢!!

1、

SQL codeselect t.goods_id, sum (t.Quantity * t.UnitPrice) value
from goods t
where t.company_id <> 747474
group by t.goods_id



2、

SQL codeselect t.goods_id, sum (t.Quantity * t.UnitPrice) value
from goods t
group by t.goods_id
having
sum (case when t.company_id=747474 then 1 else 0 end) = 0
[/Quote]
dzcdhjxyh 2009-01-05
  • 打赏
  • 举报
回复
goods_id:货物编号
Quantity:订购数量
UnitPrice:订购单价
company_id:订购货物所属公司编号

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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