查询单表数据

一、order by 

1、功能

用于查询结果集按照指定的列排序

2、格式

select column_name

from table_name

order by {列名 | 表达式 | 正整数}[asc升 |desc降] [,....n]

3、实践

例如:将goods表tid为1 的商品编号,名称和价格,并按照价格升序排列

select gdcode,gdname,gdprice

from goods

where tid=1

order by gdprice;

例如:goodstid为1的商品编号、名称、价格和销售量,并先按销售量降序,在价格升序排列

select gdcode,gdname,gdprice

from goods

where tid=1

order by gdsaleqty desc,gdprice;

注意:当指定的排序关键列不止一个时,列名间用逗号分隔

二、limit

1、格式

limit [offset,] 记录数

offset 表示偏移量,如果偏移量为0则从查询结果的第一条记录开始查询,偏移量为1时则从查询结果的第二条记录开始,以此类推

offset为可选项,当不设置时

3、实践

例如:查询goods表 中前三行的商品编号、名称和价格

select gdcode,gdname,gdprice

from goods

limit 3;

三、聚合函数

1、分类

2、实践

例如:查询goods表,统计所有商品的总销售量

select sum(gdsaleqty) from goods;

例如:查询goods表,显示最高价格的商品

select max(gdprice) from goods;

四、count函数

1、功能:计数

2、格式:

count ({[ [all | distinct] 列名| 常量| 表达式] | *})

3、实践

例如:查询orders表,显示购买过商品的用户人数

select count(distinct uID) from orders;

五、GROUP BY子句

1、格式

GROUP BY [ ALL ] 列名1,列名2 [,....n]

[WITH ROLLUP]

[HAVING 条件表达式]  限定数据显示条件

2、实践

例如 查询users表,按ucity列进行分组

select uid,uname,usex,ucity

from users

group by ucity;

统计各城市的用户人数

select ucity ,count(*)

from users

group by ucity;

六、GROUP BY 和 CROUP_COUNT函数一起使用

2、实践

例如:查询users表,将同一城市的UId值用,连接起来,列名为uids

select ucity,group_concat(uid) as uids

from users

group by ucity;

例如:查询users表,将同一城市的UId值用_连接起来,列名为uids

select ucity,group_concat(uid order by uid separator'_') as uids

from users

group by ucity;

select ucity ,count(*)

from users

where ucity in ('长沙', '上海')

group by ucity;

select ucity ,count(*)

from users

where ucity in ('长沙', '上海')

group by ucity

with rollup;

七 having

2、实践

例如:查询users表,统计各城市的用户人数,显示人数在3人以上的城市

select ucity ,count(*)

from users

group by ucity

having count(*)>=3;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值