SQL-Server学习笔记04-T-SQL数据查询

本文介绍了SQL的基础操作,包括全表查询、指定列查询、条件查询、去重、排序、使用聚合函数(如count、sum、avg等)以及分组查询,重点讲解了如何筛选和统计数据库中的数据。
摘要由CSDN通过智能技术生成

源数据库及表请转到“学习笔记02”

一、查询整表或指定列

select * from course  --返回整表所有数据
select c_id as '课程id','课程名'=c_name from course
--返回整表的c_id和c_name两列数据,“课程id”和“课程名”为显示的列名,as可省略

二、指定条件查询

select * from course
where c_id >=2
--返回c_id大于2的课程信息

三、查询结果去重,取前几位及排序

--1、去重:
insert into course values('思想品德',5),('思想品德',5)
--先往course表添加两条相同数据
select c_name,t_id from course
--返回全部数据,含两条'思想品德'数据
select distinct c_name,t_id from course
--返回非重复数据,只显示1条'思想品德'数据
--此外,请勿将标识列或者主键列一起选择,因为主键及标识列数据肯定是不重复的。

--2、排序及取前几位
select top 3 * from course order by c_id desc
--order by 列名1,列名2 desc/asc   :以目标列作降序/升序排列,其中asc可省略;
--对多列进行排序时,先以列1为准,再排列2
--top 3  :选择前面3条的数据

四、聚合函数及分组查询

--1、聚合函数count\sum\avg\max\min
select count(*) from student
--返回数据表的总行数

--2、group by分组查询
select s_id,c_id,s_score from score
group by s_id,c_id,s_score
having s_score>=60
--返回按s_id,c_id,s_score分组,且成绩大于等于60的信息,select后面的字段必须包含在group by里或者在聚合函数里
--group by后面如果加条件,不能用where,而是用having

select s_id,avg(s_score) from score
group by s_id
--返回每个学生的平均成绩

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值