目录
1 SQL 增删改查基本语句
增删改查是一个数据操作工具最基本的命令,在SQL中,这四种语句主要由以下关键字语句执行:
- 增:insert
- 删:delete
- 改:update
- 查:select
2 select 语句
2.1 select 基本语句
- 功能:SELECT 语句用于从数据库中选取数据。
- 结果:选取结果被存储在一个结果表中,称为结果集。
- 语法:可以用以下语句选择特定列名,或用*代替表示所有列。
SELECT column_name,column_name
FROM table_name;
2.2 Select … where 语句
- 功能:SELECT语句用于从数据库中选取数据,WHERE子句用于提取那些满足指定条件的记录。
- 语法:
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
2.3 Select … order by 语句
- 功能:SELECT语句用于从数据库中选取数据,用于对一列或者多列数据进行升序(ASC)或者降序(DESC)排列。
- 默认为升序排列,如果要对某元素按降序排列则在对应关键字后添加参数DESC。
- 语法:
SELECTcolumn-list
FROM table_name
[WHERE condition][ORDERBY column1, column2,.. columnN][ASC|DESC];
- 例子:
2.4 Select … group by 语句
- 功能:SELECT语句用于从数据库中选取数据, GROUP BY 语句用来对相同的数据进行分组。
- 语法:
SELECTcolumn-list
FROM table_name
WHERE[ conditions ]GROUPBY column1, column2....columnN
ORDERBY column1, column2....columnN
3 Select … join 语句
- 功能:JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。
- 类型: - INNER JOIN:如果表中有至少一个匹配,则返回行;- LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行;- RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行;- FULL JOIN:只要其中一个表中存在匹配,则返回行。
- 不同类型的join语句功能图解
- 练习网址:https://sqlzoo.net/wiki/SELECT_…_JOIN![在这里插入图片描述](https://img-blog.csdnimg.cn/0a860067aee34ae292d92a457ada44ef.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBARmlnaHRpbmdfaGF3aw==,size_20,color_FFFFFF,t_70,g_se,x_16)
3 insert into 语句
- 功能:用于向表中插入新记录,可以插入一行也可以同时插入多行。
- 语句:
INSERTINTO TABLE_NAME (column1, column2, column3,...columnN)VALUES(value1, value2, value3,...valueN);
4 update 语句
- 功能:用于更新表中已存在的记录。
- 语法:
UPDATE table_name
SET column1=value1,column2=value2,...WHERE some_column=some_value;
5 delete 语句
- 功能:用于删除表中的行。
- 语法:
DELETEFROM table_name
WHERE some_column=some_value;
6 XXX … Select 语句
- 功能:在一个查询语句中使用另一个查询语句的结果,用于无法一次查询到所需内容的情况。
- 子查询可以与 SELECT、INSERT、UPDATE 和 DELETE 语句一起使用,并可使用运算符如 =、<、>、>=、<=、IN、BETWEEN 等。
- 以下是子查询必须遵循的几个规则: - 子查询必须用括号括起来。- 子查询在 SELECT 子句中只能有一个列,除非在主查询中有多列,与子查询的所选列进行比较。- ORDER BY 不能用在子查询中,虽然主查询可以使用 ORDER BY。可以在子查询中使用 GROUP BY,功能与 ORDER BY 相同。- 子查询返回多于一行,只能与多值运算符一起使用,如 IN 运算符。- BETWEEN 运算符不能与子查询一起使用,但是,BETWEEN 可在子查询内使用。
- 语法:
--SELECT 语句中的子查询使用SELECT column_name [, column_name ]FROM table1 [, table2 ]WHERE column_name OPERATOR
(SELECT column_name [, column_name ]FROM table1 [, table2 ][WHERE])--INSERT 语句中的子查询使用--INSERT 语句使用子查询返回的数据插入到另一个表中。INSERTINTO table_name [(column1 [, column2 ])]SELECT[*|column1 [, column2 ]]FROM table1 [, table2 ][WHEREVALUE OPERATOR ]--UPDATE 语句中的子查询使用--当通过 UPDATE 语句使用子查询时,表中单个或多个列被更新。UPDATEtableSET column_name = new_value
[WHERE OPERATOR [VALUE](SELECT COLUMN_NAME
FROM TABLE_NAME)[WHERE)]--DELETE 语句中的子查询使用DELETEFROM TABLE_NAME
[WHERE OPERATOR [VALUE](SELECT COLUMN_NAME
FROM TABLE_NAME)[WHERE)]
7 数据库连接与退出
要对数据库进行操作,需要先连接数据库;操作完毕后需要退出数据库。对数据库的连接与退出命令如下:
/*两种连接方式*/
mysql -uroot -ppass -- 连接本地SQL,账号为root,密码为pass
mysql -h192.168.206.100-uroot -ppass -- 连接远程SQL,IP为192.168.206.100,账号为root,密码为pass/*三种退出方式*/exit;
quit;
\q;
8 总结
- 掌握select及添加各种条件的查询语句;
- 掌握insert 、delete、update等增删改语句;
- 掌握增删改查中包含子查询的语句;
- 掌握数据库的连接与退出方式。
参考文献
- 《SQL 教程》
- 《SQLzoo练习平台》
- 《千锋网络安全零基础到就业教程-Web渗透全套》
本文转载自: https://blog.csdn.net/Fighting_hawk/article/details/122814762
版权归原作者 Fighting_hawk 所有, 如有侵权,请联系我们删除。
版权归原作者 Fighting_hawk 所有, 如有侵权,请联系我们删除。