语法:
select * from 表名;
select 字段名 1, 字段名 2, 字段名 3, ... from 表名;
select 列名 from 表名 [where 条件表达式]
1.SELECT 命令可以读取一行或者多行记录。
2.你可以使用星号(*)来代替其他字段,SELECT 语句会返回表的所有字段数据
3.你可以使用 WHERE 语句来包含任何条件。
使用*表示查询所有的学生:
select * from student;
查询 student 表中的 name 和 age 列
select name,age from student;
去除重复:distinct
- 语法:
- SELECT DISTINCT 字段名 FROM 表名;
- 只对一列操作
select distinct country from person
- 对多列进行操作
select distinct country, province from person
从上例中可以发现,当 distinct 应用到多个字段的时候,其应用的范围是其后面的所有字段,而不只是紧挨着它的一个字段,而且 distinct 只能放到所有字段的前面,如下语句是错误的:
SELECT country, distinct province from person; // 该语句是错误的
计算列
- 语法:
SELECT 列名 1 + 固定值 FROM 表名;
SELECT 列名 1 + 列名 2 FROM 表名;
注意: 参与运算的必须是数值类型
- 一般可以使用四则运算计算一些列的值。(一般只会进行数值型的计算)
- ifnull(表达式 1,表达式 2):null 参与的运算,计算结果都为 null
- 表达式 1:哪个字段需要判断是否为 null
- 如果该字段为 null 后的替换值。
起别名
- 语法:
- 对列指定别名
SELECT 字段名1 AS 别名, 字段名2 AS 别名... FROM 表名;
- 对列和表同时指定别名
SELECT 字段名1 AS 别名, 字段名2 AS 别名... FROM 表名 AS 表别名;
SELECT 字段名 1 别名, 字段名 2 别名... FROM 表名;
as:as 也可以省略
条件查询
- where 子句后跟条件
- 运算符
-
、< 、<= 、>= 、= 、<>
- BETWEEN...AND
- IN( 集合)
- LIKE:模糊查询
- 占位符:
- _:单个任意字符
- %:多个任意字符
- IS NULL
- and 或 &&
- or 或 ||
- not 或 !
-
查询年龄大于 20 岁
SELECT * FROM student WHERE age > 20;
SELECT * FROM student WHERE age >= 20;
查询年龄等于 20 岁
SELECT * FROM student WHERE age = 20;
查询年龄不等于 20 岁
SELECT * FROM student WHERE age != 20;
SELECT * FROM student WHERE age <> 20;
查询年龄大于等于 20 小于等于 30
SELECT * FROM student WHERE age >= 20 && age <=30;
SELECT * FROM student WHERE age >= 20 AND age <=30;
SELECT * FROM student WHERE age BETWEEN 20 AND 30;
查询年龄 22 岁,18 岁,25 岁的信息
SELECT * FROM student WHERE age = 22 OR age = 18 OR age = 25
SELECT * FROM student WHERE age IN (22,18,25);
查询英语成绩为 null
SELECT * FROM student WHERE english = NULL;-- 不对的。null值不能使用 = (!=) 判断
SELECT * FROM student WHERE english IS NULL;
查询英语成绩不为 null
SELECT * FROM student WHERE english IS NOT NULL;
查询姓马的有哪些? like
SELECT * FROM student WHERE NAME LIKE '马%';
查询姓名第二个字是化的人
SELECT * FROM student WHERE NAME LIKE "_化%";
查询姓名是 3 个字的人
SELECT * FROM student WHERE NAME LIKE '_ _ _';
查询姓名中包含德的人
SELECT * FROM student WHERE NAME LIKE '%德%';
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于