MySQL - 01.数据查询语言(Data Query Language,DQL)

0. 语法

SELECT 查询列表							(7)
FROM1								(1)
INNER/LEFT/RIGHT/FULL JOIN2			(2)
ON 连接条件								(3)
WHERE 分组前的筛选条件					(4)
GROUP BY 分组列表						(5)
HAVING 分组后的筛选条件					(6)
ORDER BY 排序列表						(8)
LIMIT 起始索引,条目数;					(9)

1. 基础查询

2. 条件查询

3. 排序查询

4. 常见函数

4.1 单行函数

4.2 分组函数

5. 分组查询

6. 连接查询

7. 子查询

8. 分页查询

9. 联合查询

执行顺序:FROM - JOIN - ON - WHERE - GROUP BY - HAVING - SELECT - ORDER BY - LIMIT
1、查询单个字段:SELECT 字段名 FROM 表名;
2、查询多个字段:
3、查询所有字段:
4、查询常量:(字符型和日期型的常量值必须用单引号引起来)
5、查询函数:SELECT 函数名(实参列表);
6、查询表达式: SELECT 1+2;
7、重命名:①AS ②空格
8、去重:SELECT DISTINCT 字段名 FROM 表名;(只能对单个字段去重)
9、拼接字符串:CONCAT
10、IFNULL(字段名)如果为NULL返回指定的值,否则返回原来的值,ISNULL(字段名)如果为NULL返回1,否则返回0
11、

#1、基本查询
DESC country;
#查询 重命名
SELECT `Name` "姓名out Population",Continent 嘚 FROM country;

SELECT * FROM country;

SELECT VERSION();

SELECT 100000%256 AS 取模;

SELECT 100+90;


#去重
SELECT DISTINCT Continent FROM country;

#连接 链接是存在某个为null,结果都为null
SELECT CONCAT(`Name`,IFNULL(IndepYear,0)) FROM country;
SELECT IFNULL(IndepYear,0) FROM country;

#2、条件查询
#执行顺序 FROM - WHERE - SELECT
#条件运算符 > < = <> >= <=
#逻辑运算符 && || !(AND OR NOT)
#模糊查询 LIKE BETWEEN AND IN ISNULL(expr) LIKE一般和通配符搭配
#通配符:%表示任意多个字符,包含0个字符  _表示一个字符  \或ESCAPE 转义字符

#条件表达式
SELECT Continent,Region,IndepYear FROM country WHERE IndepYear<>1990;

#逻辑表达式
SELECT * FROM country	WHERE IndepYear>1990 AND IndepYear<1992;

#模糊查询
SELECT * FROM country WHERE `Name` LIKE '%a%';
SELECT * FROM country WHERE `Name` LIKE '_ng%';
SELECT * FROM country WHERE `Name` LIKE '_a_%' ESCAPE 'a';
SELECT * FROM country WHERE IndepYear BETWEEN 1990 AND	1992;#完全等价于大于等于左值,小于等于右值
SELECT * FROM country WHERE Continent IN ('asia','europe');#IN列表的值类型必须一致或兼容,IN不能和通配符搭配
SELECT * FROM country WHERE GNPOld IS NULL;
SELECT * FROM country WHERE GNPOld IS NOT NULL;#只能用IS查询是否为NULL,不能用=
SELECT * FROM country WHERE GNPOld <=> NULL;#安全等于可代替IS,也可用于普通=

你可能感兴趣的:(#,MySQL,Java,mysql)