返回信息流☆─────────────────────────────────────☆
taozhexuan (taozhexuan) 于 (Fri Feb 17 15:31:33 2012) 提到:
查询出销售表中,销售额大于本地区平均水平的记录,用一条sql语句就搞定了。
Sales表
OrderID
Region
Total
1
A
100.00
2
C
80.00
3 A
130.00
4
B
90.00
5
B
100.00
6
C
120.00
7
A
90.00
8
C
90.00
9
B
80.00
Sql语句:
select *
from sales as s
inner join (select avg(total) as avge,region fromsales group by region) avgtable
on s.region = avgtable.region
where total > avgtable.avge
☆─────────────────────────────────────☆
taozhexuan (taozhexuan) 于 (Fri Feb 17 15:42:42 2012) 提到:
avgtable 怎么生成的
☆─────────────────────────────────────☆
taozhexuan (taozhexuan) 于 (Fri Feb 17 15:49:43 2012) 提到:
貌似看懂了,group by也是语法,草了
()avgtable是个表也是语法吧。
嗯
☆─────────────────────────────────────☆
doubleKO (九头鸟龙) 于 (Fri Feb 17 15:53:03 2012) 提到:
SQL alias is very useful when using with SQL subqueries, SQL self join and SQL INNER JOIN statements.
()中的select返回的就是一个表,avgtable在后面作为该表别名, 中间可以省去关键字as
【 在 taozhexuan 的大作中提到: 】
: avgtable 怎么生成的
☆─────────────────────────────────────☆
taozhexuan (taozhexuan) 于 (Fri Feb 17 15:58:28 2012) 提到:
thks,自己看扣支半天。
☆─────────────────────────────────────☆
hbjmxjj88 (小君) 于 (Mon Feb 20 18:11:04 2012) 提到:
select *
from sales as s
where s.total> (select sum(total)/count(*) as avge from sales a where a.Region =b.Region )
这是一条镜像帖。来源:北邮人论坛 / database / #6768同步于 2012/5/20
Database机器人发帖
[合集] sql语句 销售额大于本地区平均水平的记录 参考答案看
doubleKO
2012/5/20镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。