一、基本查询
1.查询多个字段
SELECT 字段1,字段2,......FROM 表名;
1.举例
对uers表的name字段进行查询
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT name FROM user;
3.执行结果
2.查询所有字段
SELECT * FROM 表名;
1.举例
查询user的所有字段
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT * FROM user;
3.执行结果
3.设置别名
SELECT 字段1[AS 别名1],字段2[AS 别名2]...... FROM 表名;(AS可省略,[]在这里只是用于区分,输入代码时没[])
1.举例
给name起个名字别名,age起个年龄别名
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT name'名字',age'年龄' FROM user;
3.执行结果
4.去除重复的查询
SELECT DISTINCT 字段列表 FROM 表名;
1.举例
查询user表的age(不重复)
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT DISTINCT age FROM user;
3.执行结果
二、条件查询
SELECT 字段列表 FROM 表名 WHERE 条件列表;
1.特殊的比较运算符
比较运算符 功能
<>或!= 不等于
BETWEEN...AND... 在某个范围之间(包含最大、小值)
IN(...) 满足IN括号里面的任意一个值
LIKE 占位符 模糊匹配(_匹配单个字符,%匹配任意个字符)
IS NULL 是NULL
AND或&& 且(需要多个条件同时成立)
OR或|| 或(多个条件中任意一个条件成立)
NOT或! 非
2.实例
1.运算符 >
1.举例
查询user表中age大于20的人
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT * FROM user WHERE age>=20;
3.执行结果
2.运算符 BETWEEN...AND...
1.举例
查找age在18到20的人
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT * FROM user WHERE age BETWEEN 18 AND 20;
3.执行结果
4.运算符 IN(...)
1.举例
查询张三和老六
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
SELECT * FROM user WHERE user.name IN('张三','李四');
3.执行结果
5.运算符 LINK 占位符
1.举例
在user表查找三位数名字的人
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张小三',18),(2,'李四',20),(3,'王老五',48),(4,'老六',18);
SELECT * FROM user WHERE name LIKE '___';
3.执行结果
6.运算符 IS NULL
1.举例
将王五的age改为NULL,然后查找age为NULL的人
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张三',18),(2,'李四',20),(3,'王五',48),(4,'老六',18);
UPDATE user SET age=NULL where id=3;
SELECT * FROM user WHERE age is NULL;
3.执行结果
1.举例
查找名字带'五'的人
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张小三',18),(2,'李四',20),(3,'王老五',48),(4,'老六',18);
SELECT * FROM user WHERE name LIKE '%五';
3.执行结果
7.运算符 NOT或!
1.举例
查找user表中age不为18的人
2.代码
INSERT INTO user(id,name,age)VALUES (1,'张小三',18),(2,'李四',20),(3,'王老五',48),(4,'老六',18);
SELECT * FROM user WHERE age!=18;
3.执行结果