你的位置:首页 > 数据库

[数据库]常见的SQL Server查询语句


// 备注:这里列出一些使用频率比较高的SQL语句语法,以便他日查询和使用

SQL语句由命令、子句、运算符和统计函数组成。
一. 命令 

1. 数据定义命令:
CREATE: 建立新的数据表、字段和索引表;
DROP: 从数据库删除数据表或索引;
ALTER: 增加或修改字段属性;

2. 数据操作命令:
SELECT: 找出满足条件的记录;
INSERT: 增加记录或合并两个数据表;
UPDATE: 更新满足条件的记录;
DELETE: 删除满足条件的记录;

二. 子句 

FROM: 指定数据表;
WHERE: 设置条件;
GROUP BY: 设置分组;
HAVING: 设置分组条件;
ORDER BY: 设置输出的条件;

三. 运算符 

1. 逻辑运算符: AND(与)、OR(或)、NOT(非);
2. 关系运算符: <、<=、 >、 >=、 =、 <>(不等于);
3. 其他运算符: BETWEEN(设置范围)、LIKE(通配设置)、IN(集合设置);

四. 统计函数 

AVG: 求平均值;
COUNT: 求数量;
SUM: 求和;
MAX: 求最大值;
MIN: 求最小值;

五. 常见的SELECT、INSERT、UPDATE、DELETE语句 

1. 数据查询操作
常见的SELECT语句包括6部分,其语法形式为: 

SELECT [TOP(数值)] [all | distinct] <目标列表达式>, ...|* 

FROM 表名
WHERE 查询语句
GROUP BY 分组字段(属性名)
HAVING 分组条件
ORDER BY 字段[ASC | DESC] 

        整个SELECT语句的含义是,根据WHERE子句的查询条件表达式,从FROM子句指定的基本表(如果有多个表时,表之间用逗号分隔开)找出满足条件的元组,再按SELECT子句中的属性名(有多个属性名时,用逗号分隔开;当字段名来自不同的表时,字段名前应加字段前缀),选出元组中的属性值形成结果表;如果有GROUP子句,则将结果按属性的值进行分组,该属性列值相等的元组为一组。通常会在每组中使用集合函数。如果GROUP子句带HAVING子句,则只有满足指定条件的组才予以输出;如果有ORDER BY子句,则结果表还要按字段的值的升序(ASC)或降序(DESC)排列,默认为升序。 

其中,
*: 表示对应表的所有字段;
DISTINCT: 去掉结果表中的重复行;

2. 数据插入操作 

(1) 单元组的插入:
INSERT INTO 基本表名 [(表的列名)] VALUES(元组值)
(2) 多元组的插入:
INSERT INTO 基本表名 [(表的列名)] VALUES(元组值), (元组值),.., (元组值)
(3) 查询结果的插入:
INSERT INTO 基本表名 [(表的列名)]
这个语句可以把一个SELECT语句的查询结果插到某个基本表中。

3. 修改数据操作 

UPDATE 基本表名
SET 属性名 = 属性值
WHERE 查询语句

4. 删除数据操作 

DELETE
FROM 基本表名
WHERE 查询语句

六. 参数化SQL语句 

在SQL语句中,全局变量名称以@@开头,局部变量以@开头。
为变量赋值的方法有两种,一种是使用SELECT语句,另一种是使用SET语句。
SELECT @varName = expression
或:
DECLARE @varName char(20)
SET @varName = "Hello World!"