简体   繁体   English

使用ORACLE / SQL根据单个表中的两个条件创建两个单独的列

[英]Create two separate columns based on two conditions from single table using ORACLE/SQL

I have a table like 我有一张桌子

A1 A2 A3 A4 A5 A6 
1  1   1  1  1  1
2  2   2  2  2  2
3  3   3  3  3  3

and I want do the task like: 我想要执行以下任务:

SELECT A2 AS B2 WHERE A1 = 1
SELECT A2 AS B3 WHERE A1 = 2

How should I do this? 我应该怎么做?

I think you can use a query like this: 我认为您可以使用这样的查询:

SELECT 
    CASE WHEN A1 = 1 THEN A2 END As B2,
    CASE WHEN A1 = 2 THEN A2 END As B3,
FROM
    yourTable;

Note that B2 is as same as A2 if A1 = 1 else is null and so on. 请注意,如果A1 = 1 ,则B2A2相同,否则为null ,依此类推。

SELECT 
    CASE WHEN A1 = 1 THEN A2 END As B2,
    CASE WHEN A1 = 2 THEN A2 END As B3
FROM TABLE_NAME
WHERE  A1 = 1 OR A1 = 2

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM