📜 SELECT用法

数据查询语言(DQL) - 图1

  1. -------------------------------------
  2. 基础查询
  3. -------------------------------------
  4. -- 查询表中所有的字段内容
  5. SELECT *
  6. FROM `表名`;
  7. -- 查询表中指定字段的内容
  8. SELECT `字段名`, `字段名`
  9. FROM `表名`;
  10. -- 给字段或者表做别名
  11. SELECT `字段名1` AS `别名1`, `字段名2` AS `别名2`
  12. FROM `表名` AS `别名`;
  13. -- 函数 例如 Concat(a,b) 可以拼接字符串
  14. SELECT
  15. CONCAT(
  16. '姓名:',
  17. `要拼接的字段名`
  18. ) AS `别名`
  19. FROM
  20. student;
  21. -------------------------------------
  22. 去重
  23. -------------------------------------
  24. -- 例如id字段有很多重复的,使用这个就会去除重复的id
  25. SELECT DISTINCT `字段名`
  26. FROM `表名`;

📜 SELECT其他用法

-------------------------------------
SELECT关键词的其他其他作用
-------------------------------------
-- 查询系统版本
SELECT VERSION();
-- 用来计算
SELECT 1+1 AS '计算结果';
SELECT `ID`,`score`+1 AS '提分后' FROM `表名`;    -- 例子,统一加分
-- 查询自增的步长
SELECT @@auto_increment_increment

📜 WHERE条件子句

-------------------------------------
AND
-------------------------------------
-- 查询考试成绩在95-100分之间的( AND连接条件 )
SELECT     `id`,    `score`
FROM     list
WHERE `score` >= 95 AND `score` <= 100;

-- 查询考试成绩在95-100分之间的( &&连接条件 )
SELECT     `id`,`score`
FROM    list
WHERE `score` >= 95 && `score` <= 100;
-------------------------------------
BETWEEN(区间查询)
-------------------------------------
-- 查询考试成绩在95-100分之间的
SELECT    `id`,`score`
FROM list
WHERE `score` BETWEEN 95 AND 100;
-------------------------------------
BETWEEN(区间查询)
-------------------------------------
- 在成绩中查不等于1000的分
SELECT    `score`
FROM list
WHERE NOT `score` =1000;  
- 第二种
SELECT    `score`
FROM list
WHERE `score` !=1000;
-------------------------------------
where条件子句 -- 模糊查询(本质是比较运算符)
-------------------------------------
- a IS NULL        如果操作符为NULL,结果为真
- a IS NOT NULL        如果操作符不为NULL,结果为真
- a BETWEEN b and c        若a在b和c之间,则结果为真
- a Like b        如果a匹配b,则结果为真
- a In (a1,a2,a3...)    假设a在a1或a2或a3其中的某一个值中,结果为真

-------------------------------------
LIKE模糊查询 %代表任意字符    _代表一个字符
-------------------------------------
-- 名字中有王的用户
SELECT `id`,`name`
FROM `user`
WHERE `name` LIKE '王%';

SELECT `id`,`name`
FROM `user`
WHERE `name` LIKE '王_';

-------------------------------------
in具体查询(必须是具体的值)
-------------------------------------
-- 名字是张三的用户
SELECT `id`,`name`
FROM `user`
WHERE `name` IN ('张三','李四');

-------------------------------------
IS NOT NULL  IS NULL
-------------------------------------
-- 查询某一项值不为空
SELECT `id`,`name`
FROM `user`
WHERE `score` IS NOT NULL;

-- 查询某一项值为空
SELECT `id`,`name`
FROM `user`
WHERE `score` IS NULL;