sql server numeric 可存几位小数_从零学SQL 复杂查询

1 创建视图,保存视图,视图相当于一个sql语句的快捷方式,可以随时拿出来用

df546ad69b9ef3c632f87670cadce6a4.png

2.标量子查询,有时候条件中的数需要再写一个子查询来表示,标量子查询是单独的一个数据,不能是一个列表或者集合,不然会报错。

9a2011a6dd336466418f7f8343813c2f.png

3.关联子查询,有时候需要选取一个数据所在的某一维度的数据进行比较需要用到关联子查询,如图练习题,需要计算的是成绩“所在同一科目”平均成绩的学生,课程,成绩。这里“所在同一科目”就需要关联子查询来实现:

b52545421fe498869ec403b77fad61f3.png

f4581c8201afb4afa8072071b4423238.png

20b9b641480bd8e6651bdda102fb7a8a.png

d04188ba6b17d8873ccd31c135c4eb16.png
第5题用到的round函数和concat函数这里记录一下,也是查了资料才知道的:round函数相当于是保留小数点后面几位(默认0位),concat相当于是字符串的拼接。这里用的逻辑是——把算出来的结果:一个类似于0.**形式的小数乘以100后,并保留小数点后面0位,再将乘以后的结果后面加上‘%’这个字符串。

63949afc2ed9ead186b9a2bd9bf260a5.png

383cb566ec6b1510131a440d6e3eafc2.png

8de56441f9b8adfa492f1f01128fe7a9.png
第10题,一定要把3*写在括号里面,因为ALL后面跟的是一组数据,用3乘以一组数据会报错;另外这个题还有一个难点是一定要排除自身,不然提取出来的数据是没有的,因为一个国家人口是不可能大于自身的3倍的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值