【数据库视频】第六章 数据查询和管理
其他
2018-11-28 03:03:13
阅读次数: 0
一、简单的SELECT语句
语法格式:
-
SELECT [ALL|DISTINCT] select_list
-
[INTO new_table]
-
FROM table_source
-
[WHERE search_conditions]
-
[GROUP BY group_by_expression]
-
[HAVING search_conditions]
-
[ORDER BY order_expression[ASC|DESC]]
DISTINCT:避免重复
二、设置查询条件
操作
三、排序
①SELECT * FROM 成绩信息 where 考试编号='0801' AND 课程编号='1'
ORDER BY 分数,学生编号 [ASC|DESC] 分数是默认状态,升序排序
②SELECT * FROM 成绩信息 where 考试编号='0801' AND 课程编号='1'
ORDER BY 分数 DESC,学生编号 学生编号是默认状态,升序排序
四、分组
①SELECT 课程编号,AVG(分数) FROM 成绩信息 WHERE 考试编号='0801' GROUP BY rollup (课程编号)
②SELECT 课程编号,AVG(分数) FROM 成绩信息 WHERE 考试编号='0801' GROUP BY cube (课程编号)
五、使用函数
取最大值:SELECT MAX(分数) FROM 成绩信息 WHERE 考试编号='0801' AND 课程编号='2'
取最小值:SELECT MIN(分数) FROM 成绩信息 WHERE 考试编号='0801' AND 课程编号='2'
取平均值:SELECT AVG(分数) FROM 成绩信息 WHERE 考试编号='0801' AND 课程编号='2'
求和:SELECT SUM(分数) FROM 成绩信息 WHERE 考试编号='0801' AND 课程编号='2'
降序排序:SELECT TOP 3 分数 FROM 成绩信息 WHERE 考试编号='0801' AND 课程编号='2'
ORDER BY 分数 DESC
六、使用HAVING子句
注意:只有查询中包含GROUP BY子句时才能使用
SELECT 考试编号,课程编号,AVG(分数) FROM 成绩信息 GROUP BY 考试编号,课程编号
HAVING AVG(分数)>=90
ORDER BY 考试编号
七、插入数据
INSERT语法
-
INSERT [INTO] table_or_view [(column_list)] VALUES data_values
data_values用于指定向数据表中插入的数据值
八、INSERT…SELECT语句
-
INSERT table_name[column_list]
-
SELECT column_list
-
FROM table_list
-
WHERE search_condirions
九、SELECT…INTO语句
-
SELECT <select_list>
-
INTO new_table
-
FROM 表
-
WHERE
与INSERT…SELECT的区别:会新建一个数据表,把结果集保存到该表中
-
select *
-
into #student 临时表
-
from student_Info
-
where student_Sex='男'
十、UPDATE语句
-
UPDATE 函数(例:TOP) {table_name|view_name}
-
SET
-
{column_name={expression|DEFAULT|NULL}|@variable=expression}[,…n]
-
WHERE{search_conditions}
十一、在UPDATE语句使用FROM子句
例: select * from studentInfo
update studentInfo set s_sex=b.性别,s_address =b.家庭住址,s_id=b.学号
from studentInfo a join 学生信息 b on a.s_name=b.姓名
where b.student_Sex='女'
十二、DELETE语句
-
Delete from<table name>
-
[Where <search condition>]
十三、TOP关键字和TOP表达式
-
[
-
TOP (expression) [PERCENT]
-
[WITH TIES]
-
]
两种方式:具体数值;百分比
例:
declare @i int
set @I=2
select top (6) with ties * from result_Info ORDER BY result
例:
declare @i int
set @I=2
select top (6) with ties * from result_Info ORDER BY result
update student_Info set 民族='满族'
select * from student_Info
十四、COMPUTE子句
-
[
-
COMPUTE
-
{ { AVG | COUNT | MAX | MIN | STDEV | STDEVP | VAR | VARP | SUM }
-
(expression) } [,…n]
-
[ BY expression [,…n] ]
-
]
有compute…by… 就有order…by…
十五、在where语句中使用运算符
例:Select * from 成绩信息 where 考试编号='0802' AND 课程编号=1
例:Select * from 成绩信息 where 考试编号='0802' AND (分数 between 90 and 95)
转载自blog.csdn.net/hsm_Jasmine/article/details/83864367