SQL面試題之一

2021-09-01 08:14:09 字數 1081 閱讀 9928

某年某月某日某司出如下題:

月份 部門 績效

一月 01 10

一月 02 5

二月 02 8

二月 01 3

三月 03 2

三月 03 4

要得到如下結果:

部門 一月 二月 三月

01 10 3

02 5 8

03 6

當時寫得不好,現重寫一下(以下實現為oracle資料庫):

create table test_1(

月份 varchar(6),

部門 varchar(10),

績效 int

)insert into test_1(月份,部門,績效) values('一月','01',10)

insert into test_1(月份,部門,績效) values('一月','02',5);

insert into test_1(月份,部門,績效) values('二月','02',8);

insert into test_1(月份,部門,績效) values('二月','01',3);

insert into test_1(月份,部門,績效) values('三月','03',2);

insert into test_1(月份,部門,績效) values('三月','03',4);

實現:[color=red]

select 部門,

sum(decode(月份,'一月',績效)) as 一月,

sum(decode(月份,'二月',績效)) as 二月,

sum(decode(月份,'三月',績效)) as 三月

from test_1 group by 部門

[/color]

常見面試題之一

1.arraylist與linkedlist的區別?arraylist 採用的是陣列形式來儲存物件的,這種方式將物件放在連續的位置中,所以最大的缺點就是插入刪除時非常麻煩 2.get與post的區別?get 從伺服器獲取資料 安全性低 傳送資料量小 查詢用get post向伺服器傳送資料 安全性高 ...

java面試題目備忘之一

1 stringtest public class stringtest 問題1 當類中執行string s new string abc 這行 後,在記憶體裡生成幾個物件?他們是什麼?在什麼地方?答 生成2個物件 首先去string pool查詢有沒 abc 物件,沒有的話,就在池裡面放入abc,...

SQL面試題 (二)

sql面試題 二 有一張工資表,包含三列 員工編號 id 部門編號 groups 工資 salary 1.找到每個部門工資最高的人 包括並列第一 2.找到每個部門工資最高的人 只選乙個 sql語句如下 declare g table id int,groups nvarchar 20 salary ...