1. 基本查询

  1. 查询学生表中全体学生的全部信息

select * from student

  1. 检索全体学生的学号、姓名

Select Sno,Sname

From Student

  1. 查询时改变列标题的显示

检索全体学生的学号、姓名、家庭地址信息,并分别加上“学生”、“学号”、“家庭地址”的别名信息。

select Sname as 学生,Sno as 学号,Home_addr as 家庭地址 from Student

  1. 条件查询

  1. 查询成绩大于80分的学生的学号及课程号、成绩。

select Sno,Cno,Grade

from SC

where Grade>80

  1. 查询成绩介于75~80分的学生的学号及课程号、成绩。

select Sno,Cno,Grade

from SC

where Grade between 75 and 80

  1. 查询选修了课程号为“002”,且成绩大于80的学生的学号。

select Sno

from SC

where Grade >80 and Cno ='002'

原因:没有课程号为“002”,且成绩大于80的学生

  1. 某些学生选修某门课程后没有参加考试,所以有选课记录,但没有考试成绩,下面我们来查一下缺少成绩的学生的学号和相应的课程号。

select Sno , Cno

from SC

where Grade is null

没有缺少成绩的学生

  1. 基于IN子句的数据查询

从课程表中查询出“高数”、“c语言程序设计”的所有信息。

select * from Course

where Cname in ('高数','C语言程序设计')

或select * from Course

where Cname='高数' or cname='C语言程序设计'

  1. 基于BETWEEN....AND子句的数据查询

查询所有成绩在70-80之间的学生选课信息。( between...and 为闭区间)

select * from SC

where Grade between 70 and 80

  1. 基于 Like 子句的查询

  1. 从学生表中分别检索出姓张的所有同学的资料;检索名字的第二个字是“红”或“虹”的所有同学的资料。

select * from Student

where Sname like '张%' or Sname like '_红%' or Sname like '_虹%'

  1. 查询课程名为Visual_Basic的课程的学分。(提示:使用ESCAPE短语)

select Credit from Course

where Cname like 'Visual\_Basic' Escape '\'

注意:ESCAPE’\’转义字符,说明后面’_’是普通字符

  1. 使用 top 关键字查询

  1. 从课程表中检索出前3个课程信息。

select Top 3 * from course

  1. 从课程表中检索出前面20%的课程信息。

select Top 20 percent * from Course

  1. 消除重复行

检索出学生已选课程的课程号,要求显示的课程号不重复。

select distinct Cno from sc

  1. 查询经过计算的值

查询全体学生的姓名及其年龄(提示:利用系统函数getdate())

select Sname as 姓名,YEAR(getdate())-YEAR(Birth) as 年龄

from Student

  1. 使用 ORDER BY 语句对查询的结果进行排序

  1. 显示所有学生的基本信息,按班号排列,班号相同则再按学号排列。

select * from Student

Order by Classno,Sno

  1. 查询全体学生的姓名及其年龄,并按学生的年龄的降序排列。

select Sname as 姓名,year(getdate())-year(Birth) as 年龄

from Student

Order by '年龄' desc

  1. 使用聚合函数

  1. 查询学生总人数。

select count (distinct Sno) as 学生总人数

from Student

  1. 计算“002”号课程的学生平均成绩、最高分、最低分。

select AVG (Grade) as 平均分, MAX(Grade) as 最高分, MIN(Grade) as 最低分

from SC

Where Cno ='002'

  1. 使用 Group 子句进行查询

  1. 查询各班级学生总人数。

select Classno as 班级,COUNT(*) as 学生人数

from Student

Group by Classno

  1. 汇总总分大于150分的学生的学号及总成绩。

select Sno as 学号,Sum(Grade) as 总成绩

from SC

Group by Sno

Having Sum(Grade)>150

  1. 查询各个课程号相应的选课人数。

select Cno as 课程号,Count(*) as 学生人数

from SC

Group by Cno

  1. 使用 Compute 和 compute by 子句进行查询

  1. 汇总每个学生的学号及总成绩。

select Sno 学号,Grade 成绩

from SC

Order by Sno

Compute Sum (Grade) by Sno

修改后:

select sno 学号,sum(grade) as 总分

from sc

group by sno with rollup

  1. 按学号汇总出每个学生的学号及总成绩、最高分、最低分,及所有学生总成绩。

select sno 学号,grade 成绩

from SC

order by sno

compute sum(grade), MAX(grade), MIN(grade) by sno

修改后:

注:(1)GROUP BY子句有个缺点,就是返回的结果集中只有合计数据,而没有原始的详细记录,这时可以使用COMPUTE BY子句(2)compute只能在2008R2以下版本,高版本用rollup替代。例:select sno 学号,sum(grade) as 总分 from sc group by sno with rollup

With rollup还会统计所有的grade总分。

sql server 查询相关推荐

  1. Mysql与Sql Server查询数据库中表以及表字段

    1.查询数据库表信息 mysql查询数据库中所有表信息 SELECTtable_name AS '表名',table_comment AS '说明',create_time AS '创建时间',upd ...

  2. SQL Server 查询性能优化——覆盖索引(二)

    在SQL Server 查询性能优化--覆盖索引(一)  中讲了覆盖索引的一些理论. 本文将具体讲一下使用不同索引对查询性能的影响. 下面通过实例,来查看不同的索引结构,如聚集索引.非聚集索引.组合索 ...

  3. SQL Server查询所有数据库下模式schema

    SQL Server查询所有数据库下模式名 需求描述 找到SQL Server里所有数据库下的schema.输出格式为数据库名.模式名. 背景补充 关于SQL Server需要简单介绍下,从数据库对象 ...

  4. SQL SERVER查询时间条件式写法

    如下表: tid    tname     tdate     1      张三      2009-10-29 19:04:50     2      李四      2006-11-12 11: ...

  5. 如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集

    如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集?(2006-12-14 09:25:36) 与这个问题具有相同性质的其他描述还包括: 如 ...

  6. SQL Server查询中特殊字符的处理方法

    来源:http://database.51cto.com/art/201009/227766.htm SQL Server查询中,经常会遇到一些特殊字符,比如单引号"'"等,这些字 ...

  7. sql查询oracle数据,sql-server – 从SQL Server查询Oracle数据库

    我有一个Oracle 11g XE数据库,我想将其转移到SQL Server Express 2005中. 起初我以为我只是在Oracle中生成表作为SQL,操纵数据格式,并在SQL Server中运 ...

  8. sqlserver 指定的网络名不再可用_50个比较实用的SQL Server查询语句(1)

    在本文中,我将解释一些通用的SQL查询.我认为每个开发人员都应该了解这些查询.这些查询与SQL的任何特定主题都无关.但是了解这些查询可以解决一些复杂的任务,并且可以在许多场景中使用. 查询1:检索所有 ...

  9. Sql Server查询性能优化之走出索引的误区

    据了解绝大多数开发人员对于索引的理解都是一知半解,局限于大多数日常工作没有机会.也什么没有必要去关心.了解索引,实在哪天某个查询太慢了找到查询条件建个索引就ok,哪天又有个查询慢了,再建立个索引就是, ...

  10. SQL Server查询存储–概述

    The SQL Server Query Store is a relatively new feature introduced in SQL Server 2016. It is basicall ...

最新文章

  1. usaco ★Zero Sum 和为零
  2. DOM之城市二级联动
  3. css中属性兼容性写法,CSS3兼容属性和标准属性的书写顺序
  4. Java并发编程:CountDownLatch、CyclicBarrier和Semaphore
  5. 推荐一个优化分页查询的办法(分页数很大的情况)
  6. actions相互调用并且存在顺序
  7. C语言试题八十二之输入小写字母,把小写字母转换成大写字母。
  8. leetcode82. 删除排序链表中的重复元素 II
  9. 数据结构之二叉树:二叉查找树基本功能,Python代码实现——10
  10. 用计算机进行有理数除法时,有理数的乘除法怎么算?,什么是有理数的乘除法。越详细越好。...
  11. CSS简介、行内样式、内部样式、外部样式、注释、引入其他CSS文件
  12. Java 常用类库 之 比较接口 Comparator
  13. TCP链接的建立与终止
  14. 【ES实战】ES-Hadoop中的配置项说明
  15. 调试经验——使用Matlab绘制f(x)=sin(x)/x的函数图形
  16. 计算机控制分离性原理是什么,分离原理
  17. python爬虫模拟登录学校教务系统(青果教务系统)并查询个人成绩
  18. python_视频中语音识别转出文本
  19. 我想我是海 梦坠西子湖
  20. 2021年小红书电商直播趋势报告-小红书数据分析报告

热门文章

  1. Swift 16进制字符串与UIColor互转
  2. 蓝桥杯——2017第八届C/C++真题[省赛][B组]
  3. 卷积神经网络之(使用重复元素的网络)VGG
  4. 推荐优质大数据学习平台
  5. 吴乐旻 x张笑宇|工业革命为什么发生在英国?
  6. 如何将一个word文档的样式应用到另一个word文档
  7. 梯度下降(Gradient Descent)数学原理分析与实例
  8. linux禁用垂直同步,禁用glxgears的垂直同步
  9. struct inode
  10. 关于进程(PCB | 父进程 | 子进程 | fork深层探讨 |僵尸进程与孤儿进程)