MySQL数据库——对查询结果的基本操作(GROUP BY、HAVING、ORDER BY、LIMIT)

来源:互联网 发布:新闻文章网站源码 编辑:程序博客网 时间:2024/04/28 01:42

[]中括号内为可省略字符

1.GROUP BY(对查询结果分组)

--语句格式[GROUP BY {col_name|position} [ASC|DESC],..]/*ASC:升序(默认)DESC:降序*/--实例(假设前提条件已满足):SELECT age FROM users GROUP BY age;--指定名称SELECT age FROM users GROUP BY 1;--指定位置

2.HAVING(设置分组条件)

--语句格式[HAVING where_condition]/*HAVING条件要么为一个聚合函数(如最大、小值,平均值等),要么保证HAVING后的判断属性,必须出现在SELECT后的条件中*/--实例(假设前提条件已满足)SELECT sex FROM users GROUP BY sex HAVING age > 18;--错误示例SELECT sex,age FROM users GROUP BY sex HAVING age > 18;--在SELECT后加入age即可SELECT sex,age FROM users GROUP BY sex HAVING count(id) > 2;--在后面加入聚合函数,也可以

3.ORDER BY(对查询结果排序)

--语句格式[ORDER BY {col_name|expr|position} [ASC|DESC],..]--实例(假设前提条件已满足)SELECT * FROM users ORDER BY id DESC;--单个属性SELECT * FROM users ORDER BY age,id DESC;--多个属性(若是第一个条件可排列好,则忽略后面条件,以此往后类推)

4.LIMIT(限制查询结果返回的数量)

--语句格式[LIMIT {[offset,] row_count|row_count OFFSET offset}]--实例(假设前提条件已满足)SELECT * FROM users LIMIT 2;--限制返回数量SELECT * FROM users ORDER BY id DESC LIMIT 3,2;--从3开始,返回2行结果--注意,SELECT编号是从0开始的(即第一行编号为0),这里要特别注意
0 0
原创粉丝点击