sql之group by

[color=green][b]1、语法:[/b][/color]

SELECT column_name, aggregate_function(column_id)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;


[color=green][b]2、解释:[/b][/color]

SELECT column_name , 聚集函数( column_name 或 其它列)
FROM table_name
GROUP BY column_name


[color=darkred]GROUP BY [/color][color=green]后面的 column_name 一定要出现在 select 中,(且select 后仅且只能 出现 group by 后出现的内容)
即:相当于 对 select 的column_name 使用 distinct .[/color]

[color=darkred]GROUP BY [/color][color=green]通常与聚集函数连用[/color]


[color=green][b]3、一个实际的例子:[/b][/color]

2表连查

select rsk_source.submit_org_id ,unit_unit.unit_name, 
COUNT(rsk_source.risk_source_id) as amount

from rsk_source
left join unit_unit
on rsk_source.submit_org_id = unit_unit.unit_id

group by rsk_source.submit_org_id ,unit_unit.unit_name



结果:

[img]http://dl2.iteye.com/upload/attachment/0092/3520/3a0fc27e-c23f-31b0-8994-804610cd8c0e.png[/img]


[b][color=green]4、注意:[/color][/b]

[color=darkred]count 与 sum 函数的区别:[/color]

count 统计的是行的个数。
sum 计算的是行中列的值的总和。

例如:
[img]http://dl2.iteye.com/upload/attachment/0092/3531/8f13c7bf-cb9c-3156-98a9-e7e495f97a5f.png[/img]

count (value) 的结果是: 3
sum (value) 的结果是: 60




[color=green]where 条件语句的位置:[/color]


如果要加 where 条件语句, 须写在 group by 的前面。
虽然前面的语法中有,但这里还是要提一下。
不然报错。语法格式不正确。


引用:
[url]http://www.w3schools.com/sql/sql_groupby.asp[/url]


=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值