数据库视频(三)-随堂笔记

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]]

例如查询我的数据库里面成绩信息:
SELECT exam_No,student_ID FROM result_Info

计算结果:
SELECT 12*13 AS 计算结果

设置查询条件:
SELECT * FROM user_Info WHERE user_ID=’1’ and user_PWD = ‘2’

查询成绩前三名:运用函数top
SELECT top 3 成绩 FROM 成绩信息 WHERE 班级=’1’
order by 成绩 DESC

DESC(升序) ASC(降序)

UPDATA语句语法:
UPDATE[top]{table_name|view_name}
SET
{column name={expression|DEFAULT|NULL}|@variablt=expression}[,….]
WHERE{search_conditions}

动手操作:
select * from 成绩信息
update 成绩信息 set 姓名=’李俊’where 成绩=’4’
对姓名进行修改

TOP关键字和TOP表达式
[TIP(expression)[PERCENT]
[WITH TIES]

自己操作设置显示百分之50的成绩信息:
SELECT TOP 50 percent 姓名 FROM 成绩信息

在where中使用运算符:
select * from 成绩信息 where 班级=’1’ and (成绩 % 2=0) 这个是使成绩为整数倍的
select * from 成绩信息 where 班级=’1’ and (成绩 between 6 and 9) 这个是查询出来的成绩是6到9之间的

基本连接
用户在进行基本连接操作时,可以遵循一下基本原本:
1.SELECT子句列表中,每个目标列前都要加上基表名称
2.FROM子句应包括所有使用的基表
3.WHERE 子句应定义一个同等连接
内连接
SELECT select list
FROM table INNER JOIN table2[ON join_conditions]
[WHERE search_conditions]
[ORDER BY order_expression]
内连接消除与另一个表的任何行不匹配的行,而外连接会返回FROM子句中提到的至少一个表或视图中所有行,只要这些行符合任何搜索条件。
外连接 :左外连接、右外连接
全连接。
交叉连接不带WHERE子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
语法格式:
SELECT select_list
FROM table CROSS JOIN table2
[WHERE search_conditions]
[ORDER BY order_expression]
笛卡儿积在SQL中实现方式既是交叉连接。所有连接方式都会先生成临时笛卡而积表,笛卡尔积是关系代数里的一个概念,表示两个表中的每一个数据任意组合。

联合查询
使用UNION查询时,连接的两个结果集必须在其目标列表中有相同数目的表达式,且数据内容尽量保持一致。

for xml 子句
通过FOR XML子句并指定模式可以将从数据库视频系统的表中检索出来的数据自动表示成XML格式。

EXISTS关键字查询:
declare @username varchar(20)
declare @pwd varchar(20)
set @username=’1’
set @pwd=’黎明’
if exists (select * from 成绩信息 where 班级 = @username and 姓名=@pwd)
print ‘登录成功’
else
print’登陆失败’
如果密码是正确的,就会显示登录成功,如果密码是错误的,就会显示登陆失败。

猜你喜欢

转载自blog.csdn.net/qq_41306240/article/details/80962447
今日推荐