SQL数据库语法总结

1 SQL常用语句

1 SELECT - 从数据库中提取数据

table_name是列表的名字,用于提取表内的全部数据:

SELECT * FROM table_name;

也可以提取表内的某一列或者某几列:

SELECT column_name,column_name FROM table_name;

1.1 SELECT DISTINCT

SELECT DISTINCT column_name FROM table_name;

不同于SELECT, SELECT DISTINCT不仅可以把table中的某一列取出来,而且可以去除掉重复项。

比如这一列的内容是True, False, True, True, False,那么SELECT DISTINCT操作后得到的就是True,False。

1.2 WHERE

WHERE可以给SELECT数据提取语句增加限制条件,只提取符合WHERE子句条件的数据。用法为:

SELECT column_name,column_name FROM table_name WHERE column_name operator value;

比如:

SELECT * FROM table WHERE value = 'True';

只提取表中value这样一列为True的数据。

WHERE子句中常用的符号:

=:等于;<> :不等于;<:小于;>:大于;小于等于:<=;大于等于:>=

is null:为空

逻辑运算符:and, or

扫描二维码关注公众号,回复: 2618325 查看本文章

between XX and XX: 在某一范围内

like: 符合某种形式(如'M%'表示以M为开头)

此处补充一下:%用来替代 0 个或多个字符,_用来替代一个字符

in: 取某些值(如in(1,2,3))

1.3 ORDER BY

SELECT column_name,column_name FROM table_name ORDER BY column_name,column_name ASC|DESC;

提取出数据后,并依据某一(几)列的大小排列。

1.4 GROUP BY

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

GROUP BY 语句用于结合聚合函数(2.1部分介绍),根据一个或多个列对结果集进行分组。

举个例子(例子来自https://www.cnblogs.com/jingfengling/p/5962182.html):

“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。

select 类别, sum(数量) as 数量之和
from A
group by 类别

返回结果如下,实际上就是分类求和:

1.5 HAVING

在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与聚合函数一起使用。

HAVING 子句可以让我们筛选分组后的各组数据。

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;
  • where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,where条件中不能包含聚组函数,使用where条件过滤出特定的行。
  • having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having 条件过滤出特定的组,也可以使用多个分组标准进行分组。

2 UPDATE - 更新数据库中的数据

UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;

WHERE语句可以筛选出待修改对的数据。

3 DELETE - 从数据库中删除数据

DELETE FROM table_name WHERE some_column=some_value;

删除全部的数据(两种方式):

DELETE FROM table_name;
DELETE * FROM table_name;

4 INSERT INTO - 向数据库中插入新数据

INSERT INTO table_name VALUES (value1,value2,value3,...);
INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);

5 CREATE DATABASE - 创建新数据库

6 ALTER DATABASE - 修改数据库

7 CREATE TABLE - 创建新表

8 ALTER TABLE - 变更(改变)数据库表

9 DROP TABLE - 删除表

10 CREATE INDEX - 创建索引(搜索键)

11 DROP INDEX - 删除索引


2 SQL常用函数

2.1 SQL Aggregate 函数

SQL Aggregate 函数计算从列中取得的值,返回一个单一的值。

  • AVG() - 返回平均值
  • COUNT() - 返回行数
  • FIRST() - 返回第一个记录的值
  • LAST() - 返回最后一个记录的值
  • MAX() - 返回最大值
  • MIN() - 返回最小值
  • SUM() - 返回总和

2.2 SQL Scalar 函数

SQL Scalar 函数基于输入值,返回一个单一的值。

  • UCASE() - 将某个字段转换为大写
  • LCASE() - 将某个字段转换为小写
  • MID() - 从某个文本字段提取字符,MySql 中使用
  • SubString(字段,1,end) - 从某个文本字段提取字符
  • LEN() - 返回某个文本字段的长度
  • ROUND() - 对某个数值字段进行指定小数位数的四舍五入
  • NOW() - 返回当前的系统日期和时间
  • FORMAT() - 格式化某个字段的显示方式

参考文章 http://www.runoob.com/sql/sql-tutorial.html

猜你喜欢

转载自blog.csdn.net/m0_37622530/article/details/81291053