SQL 学习笔记

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>




你可能感兴趣的:(SQL 学习笔记)