1.sql常用命令及顺序
select *(必须)
from 表1
join 表2
where 条件
group by 字段
having 条件
order by 字段
limit _,_
from -> where -> group by -> having -> select -> order by -> limit
2.数据类型与SQL函数
2.1 数据类型
2.1.1 数值型
最常用的是int(整数)和float(小数)
2.1.2 日期型
2.1.3 文本型
最常用char和varchar,二者的区别:char是固定长度,而varchar是可变长度。
2.2 SQL函数
2.2.1 数值型函数
函数 | 描述 |
---|
SUM(列名) | 返回某列总和 |
AVG(列名) | 返回某列平均值 |
MIN(列名) | 返回某列最小值 |
MAX(列名) | 返回某列最大值 |
COUNT(列名) | 返回某列行数(不包括NULL值) |
COUNT(*) | 返回被选行数 |
COUNT(distinct 列名) | 返回相异结果数目 |
ABS() | 返回绝对值 |
SQRT(列名) | 返回平方 |
2.2.2 时间日期型函数
函数 | 描述 |
---|
NOW() | 返回当前的日期和时间 |
CURDATE | 返回当前的日期 |
CURTIME | 返回当前的时间 |
DATE() | 提取日期 或 日期/时间表达式 的日期部分 |
EXTRACT() | 返回日期/时间按的单独部分 |
DATE_ADD() | 给日期添加指定的时间间隔 |
DATE_SUB() | 从日期减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的天数 |
DATE_FORMAT() | 用不同的格式显示日期/时间 |
2.2.2.1时间格式
- DATETIME - (日期时间)格式:YYYY-MM-DD HH:MM:SS
- DATE - (日期)格式:YYYY-MM-DD
- YEAR - 格式:YYYY或YY
2.2.2.2常见日期命令
SELECT
NOW(),
DATE(NOW()),
TIME(NOW()),
YEAR(NOW()),
MONTH(NOW()),
DAY(NOW()),
HOUR(NOW()),
MINUTE(NOW()),
SECOND(NOW()),
SELECT
DATE_FORMAT(NOW(), '%y-%m-%d'),
DATE_FORMAT(NOW(), '%Y-%m'),
DATE_ADD(NOW(),INTERVAL 1 day),
DATE_SUB(NOW(),INTERVAL 1 day),
DATEDIFF('20-02-01','20-01-01')
2.2.3 文本型函数
函数 | 描述 |
---|
LEFT(列名) | 返回左边字符 |
RIGHT(列名) | 返回右边字符 |
LENGTH(列名) | 返回字段长度 |