外观
SQL语句顺序
SQL语句顺序
书写顺序:
SELECT ... -----------------------> 在查询结果中显示的列 FROM ... -----------------------> 查询哪张表 JOIN ... -----------------------> 与哪张表连接 ON ... -----------------------> 指定连接条件 WHERE ... -----------------------> 过滤数据 GROUP BY ... -----------------------> 根据哪些条件分组 HAVING ... -----------------------> 对分组后的数据再筛选 ORDER BY ... -----------------------> 指定排序条件
执行顺序:
FROM ... ON ... JOIN ... WHERE GROUP BY ... HAVING SELECT DISTINCT ORDER BY LIMIT
外连接
右外连接(left join): 除满足连接条件的数据会显示在查询结果中外, 查询结果中还会包含 JOIN 之后的表中不满足连接条件的数据
左外连接(right join): 除满足连接条件的数据会显示在查询结果中外, 查询结果中还会包含 JOIN 之前的表中不满足连接条件的数据
MySQLDDL语句
MySQL中添加列的语法:
ALTER TABLE 表名 ADD COLUMN ( 列名 类型(宽度) , ... );
其中 COLUMN 可以省略,如果仅添加一个列则可以省略小括号
MySQL中删除列的语法:
ALTER TABLE 表名 DROP COLUMN 列名 ;
MySQL中修改列名的语法:
ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 类型(宽度);
关键字
数字类型:
MySQL:int
Oracle:number
日期函数
datediff(date1,date2)计算date1与date2之间的天数
date1-date2
例:
mysql> select datediff('2022-01-01',now()) 距2022年还有;
+--------------+
| 距2022年还有 |
+--------------+
| 131 |
+--------------+
1 row in set (0.00 sec)