一道sql面试题附答案
发布日期:2022-02-03 11:38 | 文章来源:脚本之家
Wages表
-------------------------------------------
Emp_id|基本工资|工龄工资|
-------------------------------------------
1|1.00|1.00|
-------------------------------------------
2|1.00|2.00|
-------------------------------------------
3|1.00|3.00|
-------------------------------------------
4|1.00|4.00|
-------------------------------------------
......... 请从上表用“一句组合查询”查询出工资统计表,要求检索出的内容格式如下: -----------------------------------------------------------------
Emp_id|基本工资|工龄工资|合计|名次
------------------------------------------------------------------
1|1.00|1.00|2.00|x
------------------------------------------------------------------
2|1.00|2.00|3.00|y
------------------------------------------------------------------
3|1.00|3.00|4.00|..
------------------------------------------------------------------
4|1.00|4.00|5.00|..
------------------------------------------------------------------ 回答:
begintran
createtableWages(Emp_idbigintnotnullprimarykey,基本工资money,工龄工资money)
go
insertintoWages(Emp_id,基本工资,工龄工资)values(1,1.00,1.00)
insertintoWages(Emp_id,基本工资,工龄工资)values(2,1.00,2.00)
insertintoWages(Emp_id,基本工资,工龄工资)values(3,1.00,3.00)
insertintoWages(Emp_id,基本工资,工龄工资)values(4,1.00,4.00)
if@@error>0rollbackelsecommittran
selectEmp_id,基本工资,工龄工资,基本工资+工龄工资as合计,row_number()over(orderby基本工资+工龄工资)as名次fromWagesorderby合计
--droptableWages
-------------------------------------------
Emp_id|基本工资|工龄工资|
-------------------------------------------
1|1.00|1.00|
-------------------------------------------
2|1.00|2.00|
-------------------------------------------
3|1.00|3.00|
-------------------------------------------
4|1.00|4.00|
-------------------------------------------
......... 请从上表用“一句组合查询”查询出工资统计表,要求检索出的内容格式如下: -----------------------------------------------------------------
Emp_id|基本工资|工龄工资|合计|名次
------------------------------------------------------------------
1|1.00|1.00|2.00|x
------------------------------------------------------------------
2|1.00|2.00|3.00|y
------------------------------------------------------------------
3|1.00|3.00|4.00|..
------------------------------------------------------------------
4|1.00|4.00|5.00|..
------------------------------------------------------------------ 回答:
复制代码 代码如下:
begintran
createtableWages(Emp_idbigintnotnullprimarykey,基本工资money,工龄工资money)
go
insertintoWages(Emp_id,基本工资,工龄工资)values(1,1.00,1.00)
insertintoWages(Emp_id,基本工资,工龄工资)values(2,1.00,2.00)
insertintoWages(Emp_id,基本工资,工龄工资)values(3,1.00,3.00)
insertintoWages(Emp_id,基本工资,工龄工资)values(4,1.00,4.00)
if@@error>0rollbackelsecommittran
selectEmp_id,基本工资,工龄工资,基本工资+工龄工资as合计,row_number()over(orderby基本工资+工龄工资)as名次fromWagesorderby合计
--droptableWages
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。
相关文章