[英]how to get value of next column below previous column in DB2 Sql
我有一個如下表,我想獲取 IN 列下方的 OUT 列值並添加一條新記錄。
create table Temp (
[name] varchar(10),
[In] varchar(10),
[Out] varchar(10),
[HRs] varchar(10),
);
insert into Temp values('bob','login','logout','8');
insert into Temp values('alice','login','logout','9');
insert into Temp values('peter','login',null,'0');
表output
姓名 | 在 | 出去 | 人力資源 |
---|---|---|---|
鮑勃 | 登錄 | 登出 | 8 |
愛麗絲 | 登錄 | 登出 | 9 |
彼得 | 登錄 | NULL | 0 |
預計 Output
姓名 | 在 | 人力資源 |
---|---|---|
鮑勃 | 登錄 | 8 |
鮑勃 | 登出 | 8 |
愛麗絲 | 登錄 | 9 |
愛麗絲 | 登出 | 9 |
彼得 | 登錄 | 0 |
彼得 | NULL | 0 |
我需要在 Temp 表上實現上述 output 將 IN 和 OUT 列合並到 IN 列中,如何在 DB2 sql 中實現這一點
一種方法使用聯合:
SELECT NAME, "IN", HRs
FROM
(
SELECT NAME, "IN", HRs, 1 AS pos FROM Temp
UNION ALL
SELECT NAME, "OUT", HRs, 2 FROM Temp
) t
ORDER BY NAME, pos;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.