SQL 是操作数据库的语言。
ANSI SQL 是标准的 SQL,具有通用性。
不同数据库会有自身的拓展,比如 Oracle 的 PL/SQL,SQL Server 的 Transact-SQL。
SQL语句以分号结尾。
SQL语句不区分大小写。
字符串和日期需要用单引号括起来。
不同数据库的数据类型相差很大。
别名可以是中文,需要用双引号括起来。
添加 ORDER BY 是个好习惯,它总应位于句末。
SQL 语句是由若干个子句组成,按子句分行的写法会显得结构清晰。
SELECT 后面可以跟表达式,WHERE 后面也可以。
不等号是 <>。
创建字段时,尽量使用 NOT NULL 约束,因为 NULL 值比较难处理。
SQL 语句是用来解决实际问题的。
WHERE 后的表达式可以用 OR,AND 和括号来形成各种组合。
COUNT(*) 会得到包含 NULL 的数据行数,COUNT(列名)会得到 NULL 之外的数据行数。
使用 DISTINCT 可以去除重复值,最好将它作用单列上。
GROUP BY 一般和聚合函数一起使用,可以作用于多个列。
NOT 操作符相当于集合取余。
% 可以表示一个多个或者0个字符,_ 只能表示一个字符。
外键用于预防破坏表之间连接的动作,也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。
直接查询多张表,会返回笛卡尔积,即行数相乘列数相加的结果。
使用 INNER JOIN 只会保留符合条件的行数。
使用 LEFT JOIN 会确保左表的所有行都会被列出。
视图是预先写好的 SQL 语句,一张没有数据的、动态的表。
子查询,返回某一列的集合。
<span style="font-family:Microsoft YaHei;font-size:14px;">SELECT CASE WHEN cn_name LIKE '严%' THEN '严' WHEN cn_name LIKE '周%' THEN '周' ELSE NULL END AS fisrtName FROM csp_user ORDER BY fisrtName DESC </span>