SQL Server 数据库
文章平均质量分 51
lvzhifu
这个作者很懒,什么都没留下…
展开
-
消除重复行distinct
查询所有选修过课的学生的学号select sno from sc查询结果里有许多重复行,去重复的方式:select distinct sno from sc原创 2011-12-26 19:06:50 · 563 阅读 · 0 评论 -
where查询条件的指定,between and,in,like
某些查询条件确定范围between and,not between and确定集合in,not in字符匹配like,not like空值is null,is not null多重条件and,or,not1。确定范围 查询年龄在(不在)21到24之间的学生姓名,年龄。 select原创 2011-12-28 13:58:57 · 1174 阅读 · 0 评论 -
带有exists谓词的子查询 嵌套查询
Exists,NOT EXISTS:1.含义:带有exists谓词的子查询不返回任何实际数据,它只产生逻辑真值true或逻辑假值false。2.查询所有选修了c1号课程的学生姓名: select sn from s where exists (select * from sc where sno=s.sno and cno='c1')注:若内查询结果(select *原创 2012-02-02 21:57:50 · 2647 阅读 · 0 评论 -
常用集函数,count(),sum(),avg(),max(),min()
1. count() 查询学生总人数。 select count(*) from s count(*)表示对元组或记录计数。2.sum() 返回组中所有值的和。sum只能用于数字列,空值会被忽略!3.avg()返回组中值的平均值,空值回避忽略!4.max()返回组中值的最大值5.min()返回组中值的最小值6.计算c1课程的学生人数、最高成绩原创 2011-12-29 17:13:18 · 468 阅读 · 0 评论 -
分组查询 group by having 排序 order by asc(升序)或desc(降序)
1.查询排序:order by asc(升序)或desc(降序),默认asc(升序)查询选修了 3号课程的学生的学号及其成绩,查询结果按分数的降序排列。select sno,score from sc where cno='c3' order by score desc查询全体学生情况,查询结果按所在系升序排列。select * from s order by de原创 2011-12-30 21:57:31 · 7033 阅读 · 2 评论 -
连接查询 left join on, union
1.自然连接连接s和sc表select s.sno,sn,sex,age,dept,cno,score from s ,sc where s.sno=sc.sno2.外连接左连接 left join on 连接s和sc表select s.sno,sn,sex,age,dept,cno,score from s left join sc on s.sno=sc.sn原创 2011-12-31 22:23:33 · 643 阅读 · 0 评论 -
sql中的case when then else end,列值的选择输出
1.查询所有学生信息,性别为男的同学,显示为“男同学”,性别为女的,显示为“女同学”select *,case sex when '男' then '男同学' when '女' then '女同学' else '其他'end as a from dbo.s数据库表s,c,sc截图请到:截图地址原创 2012-01-08 20:30:12 · 602 阅读 · 0 评论 -
嵌套查询 带有in谓词,比较运算符,any或all谓词的子查询
前言1. 将一个查询块嵌套在另一个查询块的where子句或having短语的条件中的查询称为嵌套查询2. 上层的查询块叫外层查询或父查询或主查询,下层查询块又称为内层查询或子查询,sql语句允许多层嵌套查询!3. 子查询的select语句不能使用order by子句,order by子句永远只能对最终(或外)查询结果排序4. 嵌套查询的求解方原创 2012-01-31 21:08:40 · 4772 阅读 · 0 评论 -
on和where的区别
数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 在使用left jion时,on和where条件的区别如下:1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录转载 2011-12-26 18:40:35 · 331 阅读 · 0 评论