赞
踩
摘要:SQL 常用命令总结。
作者 | 爱德宝器
来源 | 数据管道
当你看一份数据分析岗位的招聘要求时,通常都会有这么一条:「熟练使用SQL」,你熟练么?不熟练的话,就来复习一下。
最基本的几个问题,SQL是什么?数据库是什么?RDBMS又是什么?什么叫表?
数据库(Database):按照数据结构来组织、存储和管理数据的仓库。
RDBMS:(Relational Database Management System)
关系数据库管理系统,存储和操作关系数据库表中排列的数据的软件。
SQL:Structured Query Lanuage(结构化查询语言),更详细地说,SQL 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库脚本文件的扩展名。
表:按列和行排列的一组数据。列表示存储数据的特征,行表示实际的数据条目。
了解完以上关于数据库的一些基本概念之后,下面就来看看 SQL精简版复习大纲。
下面挨个来介绍一下。
1.1、如何选择多列
1#语法2SELECT <Column List>FROM <Table Name>WHERE <Search Condition>34# 例子5SELECT FirstName, LastName, OrderDateFROM Orders WHERE OrderDate > '10/10/2010'
1.2、如何选择某一列并去重(重点)
1#语法2SELECT DISTINCT <Column_name>FROM <Table Name>34#例子5SELECT DISTINCT FirstName FROM Orders
1.3、如何从第一行开始选择一共五行数据?
1#语法2SELECT <col_name >FROM table_name limt 5 offset 1;34#例子5SELECT FirstName FROM Orders limt 5 offset 1;
1.4、如何按照指定方向(升、降)排序选择数据?
1#语法2SELECT co_name1,col_name2 FROM table_name ORDER BY col_name1 DESC,col_name2 ASC34#例子5SELECT ,FirstNameFROM Orders ORDER BY OrderDate DESC
1.5、常见的一些过滤选择有哪些。(重点)
1#范围内检查 2SELECT col_name FROM table_name WHERE col_name BETEWEEN 5 AND 10; 3 4#空值检查 5SELECT col_name FROM table_name WHERE col_name IS null; 6 7# in操作符 8SELECT col_name FROM table_name WHERE col_name IN (....); 910# NOT操作符11SELECT col_name FROM table_name WHERE NOT (条件);1213#AND 和 OR 注意优先级 and 优先级高于or14SELECT col_name FROM table_name WHERE (condi_1 OR condi_2) AND condi_3;1516#第五部分使用通配符进行过滤17SELECT col_name FROM table_name WHERE col_name like '..%..';SELECT col_name FROM table_name WHERE col_name like '.._..';SELECT col_name FROM table_name WHERE col_name like '[]%';
1.5、如何分组并按条件选择数据?(重点)
1#语法2SELECT <Column List>, <Aggregate Function>(<Column Name>)FROM <Table Name>WHERE <Search Condition>GROUP BY <Column List>34#例子5SELECT LastName, SUM(OrderValue)FROM OrdersWHERE OrderDate > '10/10/2010'GROUP BY LastName67注意点: GROUP BY 后面也可以接条件。8WHERE 语句和HAVING配合的使用。WHERE在HAVING之前.9WHERE 过滤针对的是行,HAVING过滤针对的是组。
1.6、分组和排序的顺序是什么?(重点)
1/* 2SELECR 3FROM 4WHERE 5GROUP BY 6HAVING 7ORDER BY 8*/ 9SELECT col_name FROM table_name10WHERE <condition_1>11GROUP BY <col_name>12HAVING <condition_2>13ORDER BY <col_name>
1.7、如何使用子查询?(重点)
1SELECT col_name FROM table_name WHERE col_name = (SELECT col_name FROM table_name WHERE .... );
1.8、表的联结查询怎么做(非常重点!!!!一定要会!)
1#语法2SELECT <Column List>FROM <Table1> JOIN <Table2>ON <Table1>.<Column1> = <Table2>.<Column1>、34#例子5SELECT Orders.LastName, Countries.CountryNameFROM Orders INNER JOIN Countries ONOrders.CountryID = Countries.ID67除此之外还有左联结 LEFT JOIN8右联结 RIGHT JOIN9全联结 FULL JOIN
1.9、如何使用联合查询
1#语法2SELECT <Column List> FROM <Table1>UNIONSELECT <Column List> FROM <Table2>34#例子5SELECT <Column List> FROM <Table1>UNIONSELECT <Column List> FROM <Table2>
2.1 INSERT(插入)
1#语法23INSERT INTO <Table Name>(<Column List>) VALUES (<Values>)45#例子6INSERT INTO Orders(FirstName, LastName, OrderDate) VALUES('John', 'Smith', '10/10/2010')
2.2 UPDATE(更新)
1#语法2UPDATE <Table Name>SET <Column1> = <Value1>, <Column2> = <Value2>, …WHERE <Search Condition>34#例子5UPDATE OrdersSET FirstName = 'John', LastName = 'Who' WHERE LastName='Wo'
2.3 DELETE(删除)
1#语法2DELETE FROM <Table Name>WHERE <Search Condition>34#例子5DELETE FROM OrdersWHERE OrderDate < '10/10/2010'
3.1、CREATE (创建表)
1# 语法2CREATE TABLE <Table Name>( Column1 DataType, Column2 DataType, Column3 DataType) 34# 例子 5CREATE TABLE Orders( FirstName CHAR(100), LastName CHAR(100), OrderDate DATE)
3.2、ALTER(更改表)
1#语法2CREATE TABLE <Table Name>ADD col_name Datatype;CREATE TABLE <Table Name>DROP COLUMN <col_name> 34# 例子5ALTER TABLE Vendors ADD vend_phone CHAR(20); ALTER TABLE Vendors DROP COLUMN vend_phone;
3.3 DROP (删除表)
1#语法2DROP TABLE table_name;34#例子DROP TABLE CustCopy;
这些是最基础的操作命令,必须得会。
/今日留言主题/
你常用 SQL 么?
(留言格式:Dayxx:blahblah)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。