SQL学习整理

参考菜鸟教程:https://www.runoob.com/sql/

 

查询:

SELECT  DISTINCT《去重取值》 TOP number《SQL server限制查询数量》  column_name  AS《起别名》  alias_name

FROM  table_name

WHERE  column_name = value  AND  //  OR

// column_name (NOT) LIKE《模糊查询》  value

// column_name  IN《子集取值》   (value1,value2)

// column_name  BETWEEN《范围内取值》 value1 AND value2

// ROWNUM《oracle限制查询数量》 <= number;

//LIMIT《MySQL限制查询数量》 number

ORDER  BY  column_name  ASC  //  DESC《降序排列》

 

 

插入:

INSERT  INTO  table_name (column1,column2,column3,...)《全部列插入可省略列名》

VALUES  (value1,value2,value3,...);

 

 

修改:

UPDATE  table_name

SET  column1=value1,column2=value2,...

WHERE  some_column=some_value;

 

 

删除:

DELETE  FROM table_name

WHERE  some_column=some_value;《若无限定条件将删除所有的记录》

 

 

SQL通配符:

%                                 替代 0 个或多个字符

_                                  替代一个字符

[charlist]                        字符列中的任何单一字符

[^charlist]或[!charlist]               不在字符列中的任何单一字符

                           

 

Join联接:

INNER JOIN:如果表中有至少一个匹配,则返回行

LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行

RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行

FULL JOIN:只要其中一个表中存在匹配,则返回行

 

取交集:

SELECT  column_name(s)  FROM table1

(INNER)  JOIN《有INNER效果一样,等同JOIN。取两个表的交集》  table2

ON  table1.column_name=table2.column_name;

 

左连接:

SELECT  column_name(s) FROM table1

LEFT JOIN 《以左表为主体,返回满足条件的所有组合,左表中所有的记录都会被与右表组合,其中若右表没有符合条件的值对应的列为NULL》

右连接:

//RIGHT JOIN《与左连接相反》

 

 

合并查询结果:

SELECT column_name(s) FROM table1

UNION 《合并查询结果》 ALL《允许合并后重复》

SELECT column_name(s) FROM table2;

 

 

定义数据库或表结构:

CREATE DATEBASE datebase_name;

 

CREATE  TABLE table_name

(

column_name1  data_type(size)  constraint_name,

column_name2  data_type(size)  constraint_name,

column_name3  data_type(size)  constraint_name,

....

);

 

SQL约束:

 

NOT NULL -                                      指示某列不能存储 NULL 值。

UNIQUE -                                       保证某列的每行必须有唯一的值。

PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。      确保某列(或两个列多个列的结合)有唯一标识,

FOREIGN KEY -                                   保证一个表中的数据匹配另一个表中的值的参照完整性。

CHECK -                                         保证列中的值符合指定的条件。

DEFAULT -                                        规定没有给列赋值时的默认值

 

 

SQL函数:

SELECT  AVG(column_name)《平均值》

      // COUNT(column_name)《返回指定条数记录》

     // COUNT(*)《返回记录数》

     // COUNT(DISTINCT column_name)《返回不同值的数目

// MAX(column_name)《最大值》

// MIN(column_name)《最小值》

// SUM(column_name)《列数》(

 FROM table_name

 

 

GROUP BY 分组:

参考:https://www.runoob.com/sql/sql-groupby.html

你可能感兴趣的:(SQL学习整理)