第1课 了解SQL
简单介绍了sql,和dbms,无重点。
第2课 检索数据
重点:select语句,distinct,limit,注释
1. select 语句如果没有明确排序查询结果,那么返回的数据没有特定的顺序。返回数据的顺序可能是数据被添加到表中的顺序,也可能不是。只要返回相同数目的行,就是正常的。
2. 多条 SQL 语句必须用 ; (分号)分隔。
3. SQL不区分大小写
4. SQL语句分行可读性更好
5. 最好不要使用 * 这种通配符 select 表中所有的列
6. distinct 的使用。 distinct 关键字作用于所有的列,不仅仅是跟在其后的那一列。
7. limit n offset m 的使用。从 第 n 行开始的 m 行数据。(n is 0 based)
(mysql, mariaDB, SQLite 可以简化 LIMIT 4 OFFSET 3 --> LIMIT 4, 3)
8. 注释一般用 '--' 或者 '#' (单行注释) 或者 '/* */' (多行注释)
第3课 排序检索数据
重点:order by,
1. order by 应该是 select 语句中最后一条子句; 它也可以通过没有被 select 的列进行排序
2. 如何按照多个列排序。 需要理解的是下面列子中只有在多个行具有相同的 prod_price 值时才对产品按照 prod_name 进行排序。如果 prod_price 列中所有值都是唯一的,则不会按照 prod_name 排序。
select prod_id, prod_price, prod_name from Products order by prod_price, prod_name
3. 按照列位置排序,(坦白讲我觉得这个一般不会用到)
select prod_id, prod_price, prod_name from Products order by 2, 3;
select 清单中指定的选择列的相对位置排序。