欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 数据库 > MsSql

一道sql面试题附答案

发布时间:2008-05-10 作者: 来源:转载
一道sql面试答案
有1张表,

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

相关推荐