Py学习  »  DATABASE

mysql之简单查询(小白入门必备)

辉猪子 • 3 年前 • 249 次点击  

语法格式

//剔除查询结果中重复的数据
SELECT [DISTINCT] * | {字段名1,字段名2,字段名3,……} FROM 表名
“|” 意为或者,二选一

//指定查询的条件
[WHERE 条件表达式1]

//对字段进行分组
[GROUP BY 字段名] or [HAVING 条件表达式2]

//升降序排列
默认为升序ASC [ORDER BY 字段名][ASC升|DESC降]

//记录数
[LIMIT [OFFSET记录数] or [LIMIT[记录数,偏移量]]

1、去重查询

SELECT [DISTINCT] * | {字段名1,字段名2,……}
字段名1,字段名2,……FROM表名

select distinct id ,name from products;

DISTINCT,可选参数,用于剔除查询结果中重复的数据

在SELECT查询语句中DISTINCT关键字只能用在第一个所查列名之前。

星号*通配符,表示表中的所有字段 “|” 为或者,互斥关系,二选一

2、过滤数据

WHERE条件表达式,可选参数,用于指定查询的条件

select name,price from products where price = 2;

3、常数的查询

在SELECT中 除了书写列名,还可以书写常数

SELECT ‘2020-05-20’,9999,sname FROM student;

4、分组查询

GROUP BY字段名 [HAVING 条件表达式2]

select*from student where group by name;

SELECT ename, sal * 12 AS yearSalary FROM emp ORDER BY yearSalary;

GROUP BY,可选参数,用于将查询结果按照指定字段进行分组

HAVING,可选参数,用于对分组后的结果进行过滤

5、限制查询

第一种:LIMIT 记录数 [OFFSET 偏移量] ;

select name from products limit 5;
注:limit 5 表示 查询结果不超过5行

第二种:LIMIT [偏移量,]记录数;

select ame from products limit 5,5;
注:从第五行开始,查询5行

LIMIT,可选参数,用于限制查询结果的数量
LIMIT后面可以跟两个参数,第一个参数OFFSET表示偏移量,如果偏移量为0,则从查询结果的第一条记录开始,偏移量为1,则从查询结果的第二条记录开始,以此类推
OFFSET,可选参数,如果不指定其默认值为0
第二个参数,记录数表示返回查询记录的条数

算术运算符

在SELECT查询语句中还可以使用 加减乘除运算符

– 查询20年后各学生的年龄大小
SELECT sname,age+20 FROM student;

1、通配符过滤

最常使用的通配符是百分号(%)。在搜索串中,%表示 任何字符 出现任意次数

select id, name from products where name like ‘j%’;

2、排序

ORDER BY 字段名 [ASC | DESC]

select * from stu where order by money ASC;

ORDER BY,可选参数,用于将查询结果按照指定字段进行排序

排序方式由参数ASC或DESC控制,其中,ASC表示按升序进行排列,DESC表示按降序进行排列,如果不指定参数,默认为升序排列

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/72272
 
249 次点击