SQL - NightXww/Notes GitHub Wiki
SQL
1. SELECT
- 一些基本概念
- "%"是万用字符,可以用以代表任何字符。
- "_"是万用字符,可以用以代表任何单个字符。
- 关系型运算符优先级高到低为:NOT>AND>OR。
- ORDER BY : 默认为升序ASC,降序则是DESC。
- 引号字符串中的单引号需要用两个单引号来表示。
- IN语句做真假判断,返回值0或1。
- SELECT DISTINCT 列名称 FROM 表名称:仅仅列出不同(distinct)的值。
- HAVING用于筛选聚合函数的输出值,一般与GROUP BY合用,放在GROUP BY之后。
- 相关子查询 : 相关子查询的执行依赖于外部查询。多数情况下是子查询的WHERE子句中引用了外部查询的表。执行过程: (1)从外层查询中取出一个元组,将元组相关列的值传给内层查询。 (2)执行内层查询,得到子查询操作的值。 (3)外查询根据子查询返回的结果或结果集得到满足条件的行。 (4)然后外层查询取出下一个元组重复做步骤1-3,直到外层的元组全部处理完毕。
- LEFT JOIN : 会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。
- RIGHT JOIN : 会从右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。
- INNER JOIN : 在表中存在至少一个匹配时,INNER JOIN 关键字返回行。
- LIMIT : 是mysql的语法。
select * from tablename limit m,n
其中m是指记录开始的index,从0开始,表示第一条记录,n是指从第m+1条开始,取n条。select * from tablename limit 2,4
即取出第3条至第6条,4条记录。
2. 函数
- 核心聚合函数
AVG( ),COUNT( ),MAX( ),MIN( ),SUM( )
- CONCAT 连接字符串
CONCAT(s1, s2 ...)
- REPLACE
REPLACE(f, s1, s2)
- COALESCE 返回首个非空值
COALESCE(s1, s2 ...)
3.其他
- 元音字母“Ü”输入方法为“alt+0220”即可。