sql server数据表的查询与维护

本文详细介绍了SQL的各种查询技巧,包括打开数据库、查询所有记录、比较与范围运算、计算列、列表查询、空值处理、模式匹配、消除重复值、最高与最低值统计、地区统计、连接查询(内、左、右、全连接)、子查询应用以及数据迁移等,覆盖了数据库操作的多个核心场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.打开并使用数据库

2.查询表中所有记录

3.比较跟范围运算

4.查询带计算的列

5.列表查询

6.空值查询

7.模式匹配

8.消除重复值

9.查询“储户”表中存款额最高的两名储户信息

10.统计“储户”表中存款额的最高值、最低值和平均值

11.统计“储户”表中每个地区的储户数和平均存款额

12.统计“储户”表中各地区中储户平均存款额在以上的地区、储户数和平均存款额

13.内连接

14.查询“储户”表中每个储户的账号、姓名、存款额及比其存款额高的其它储户的平均存款额

15.左外连接(left join)

16.右外连接(right join)

17.完全连接(full join)

18.子查询

19.使用子查询检索年之前办理了存取款业务的储户账号、姓名和地址

20.把储户中的所有记录添加到新表中


1.打开并使用数据库

use 活期存款


2.查询表中所有记录

select * from 储户

select 账号,姓名,存款额 from 储户


3.比较跟范围运算

select 账号,姓名,存款额 from 储户

where 存款额>=2000 and 存款额<=5000

select 账号,姓名,存款额 from 储户

where 存款额 between 2000 and 5000


4.查询带计算的列

select 账号,姓名,电话,地址,存款额*0.3 as 利息金 from 储户

where 账号=10011


5.列表查询

select 账号,姓名,存款额 from 储户

where 地址 in('柳南','官塘')


6.空值查询

select * from 储户

where 电话 is null


7.模式匹配

select 账号,姓名,存款额 from 储户

where 姓名 like('刘%')


8.消除重复值

select  distinct 储蓄所编号 from 存取款单


9.查询“储户”表中存款额最高的两名储户信息

select top 2 * from 储户

order by 存款额 desc    --order by 排序 desc降序asc升序


10.统计“储户”表中存款额的最高值、最低值和平均值

select MAX(存款额) as 最高存款额,

       MIN(存款额) as 最低存款额,

       AVG(存款额) as 平均存款额 from 储户


11.统计“储户”表中每个地区的储户数和平均存款额

select 账号,COUNT(*)as 储户数,AVG(存款额) as 平均存款额

from 储户

group by 账号


12.统计“储户”表中各地区中储户平均存款额在以上的地区、储户数和平均存款额

select 地址,COUNT(*) as 储户数,AVG(存款额) as 平均存款额

from 储户

group by 地址

having AVG(存款额)>=3000


13.内连接

select a.账号,a.姓名,b.储蓄所编号,b.存取标志,b.存取金额

from 储户 as a,存取款单 as b

where a.账号=b.账号     --或用inner join和on


14.查询“储户”表中每个储户的账号、姓名、存款额以及比其存款额高的其它储户的平均存款额

select a.账号,a.姓名,a.存款额,AVG(b.存款额) as 平均存款额

from 储户 as a,储户 as b

where a.存款额<b.存款额

group by  账号,姓名,存款额


15.左外连接(left join)

select a.账号,a.姓名,b.储蓄所编号,b.存取标志,b.存取金额

from 储户 as a left join 存取款单 as b

on a.账号=b.账号


16.右外连接(right join)

select a.账号,a.姓名,b.储蓄所编号,b.存取标志,b.存取金额

from 储户 as a right join 存取款单 as b

on a.账号=b.账号


17.完全连接(full join)

select a.账号,a.姓名,b.储蓄所编号,b.存取标志,b.存取金额

from 储户 as a full join 存取款单 as b

on a.账号=b.账号


18.子查询

select * from 储户

where 存款额>(select AVG(存款额) from 储户)

select 账号,姓名,地址,存款额 from 储户

where 存款额>

(select 存款额 from 储户

where 地址='柳南')


19.使用子查询检索年之前办理了存取款业务的储户账号、姓名和地址

select a.账号,姓名,地址,存取日期

from 储户 as a left join 存取款单 as b

on a.账号=b.账号

where b.存取日期<(select 存取日期 from 存取款单where b.存取日期<2030)

select * from 储户

where exists

(select * from 存取款单

where 账号=储户.账号)


20.把储户中的所有记录添加到新表中

select * into 储户 from 储户

drop table 储户


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

T何必当初

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值