一道sql面試題附答案
更新時間:2008年05月10日 21:40:05 作者:
一道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 |
-------------------------------------------
.........
請從上表用 “一句組合查詢” 查詢出工資統(tǒng)計表,要求檢索出的內(nèi)容格式如下:
-----------------------------------------------------------------
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 | ..
------------------------------------------------------------------
回答:
begin tran
create table Wages(Emp_id bigint not null primary key,基本工資 money, 工齡工資 money)
go
insert into Wages(Emp_id,基本工資,工齡工資)values(1,1.00,1.00)
insert into Wages(Emp_id,基本工資,工齡工資)values(2,1.00,2.00)
insert into Wages(Emp_id,基本工資,工齡工資)values(3,1.00,3.00)
insert into Wages(Emp_id,基本工資,工齡工資)values(4,1.00,4.00)
if @@error>0 rollback else commit tran
select Emp_id,基本工資,工齡工資,基本工資+工齡工資 as 合計,row_number() over(order by 基本工資+工齡工資) as 名次 from Wages order by 合計
--drop table Wages
Wages 表
-------------------------------------------
Emp_id | 基本工資| 工齡工資|
-------------------------------------------
1 | 1.00 | 1.00 |
-------------------------------------------
2 | 1.00 | 2.00 |
-------------------------------------------
3 | 1.00 | 3.00 |
-------------------------------------------
4 | 1.00 | 4.00 |
-------------------------------------------
.........
請從上表用 “一句組合查詢” 查詢出工資統(tǒng)計表,要求檢索出的內(nèi)容格式如下:
-----------------------------------------------------------------
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 | ..
------------------------------------------------------------------
回答:
復制代碼 代碼如下:
begin tran
create table Wages(Emp_id bigint not null primary key,基本工資 money, 工齡工資 money)
go
insert into Wages(Emp_id,基本工資,工齡工資)values(1,1.00,1.00)
insert into Wages(Emp_id,基本工資,工齡工資)values(2,1.00,2.00)
insert into Wages(Emp_id,基本工資,工齡工資)values(3,1.00,3.00)
insert into Wages(Emp_id,基本工資,工齡工資)values(4,1.00,4.00)
if @@error>0 rollback else commit tran
select Emp_id,基本工資,工齡工資,基本工資+工齡工資 as 合計,row_number() over(order by 基本工資+工齡工資) as 名次 from Wages order by 合計
--drop table Wages
相關(guān)文章
SQL Server實現(xiàn)將特定字符串拆分并進行插入操作的方法
這篇文章主要介紹了SQL Server實現(xiàn)將特定字符串拆分并進行插入操作的方法,涉及SQL Server的循環(huán)、遍歷、判定及插入等相關(guān)操作技巧,需要的朋友可以參考下2016-08-08SqlServer服務(wù)中利用觸發(fā)器對指定賬戶進行登錄ip限制提升安全性操作
這篇文章主要介紹了SqlServer服務(wù)中利用觸發(fā)器對指定賬戶進行登錄ip限制提升安全性,本文給大家講解的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-02-02SQL Server誤區(qū)30日談 第20天 破壞日志備份鏈之后,需要一個完整備份來重新開始日志鏈
事務(wù)日志備份會備份自上次事務(wù)日志備份以來所有的事務(wù)日志(如果從來沒有過日志備份的話,那就從上一次完整備份開始)。有好幾種類型的操作會中斷事務(wù)日志的連續(xù)性,也就是說除非重新開始新的日志鏈,SQL Server無法再進行日志備份2013-01-01sqlserver 函數(shù)、存儲過程、游標與事務(wù)模板
SQL 函數(shù)、存儲過程、游標與事務(wù)模板,學習sqlserver的朋友很多情況下都需要用得到。2010-08-08SQL高級應(yīng)用之使用SQL查詢Excel表格數(shù)據(jù)的方法
本文和大家講下如何在SQL Server分析器中查詢Excel電子表格的數(shù)據(jù),其實很簡單的,來看下下面的SQL語句吧。2010-03-03SQL Server數(shù)據(jù)庫中的存儲過程介紹
這篇文章主要介紹了SQL Server數(shù)據(jù)庫中的存儲過程介紹,本文講解了什么是存儲過程、存儲過程語法、存儲過程的一些使用實例等內(nèi)容,需要的朋友可以參考下2015-01-01