반응형
Oracle에서 두 열을 하나의 열로 비교하는 방법
두 열에 Oracle에서 동일한 데이터가 포함되어 있는지 여부를 나타내는 열을 SELECT 쿼리에 추가하는 방법을 알 수 없습니다.
다음과 같은 질문을 쓰고 싶습니다.
select column1, column2, column1=column2 from table
이 테이블이 있으면
+---------+---------+
| column1 | column2 |
+---------+---------+
| value1 | value1 |
| value2 | value3 |
| value4 | value4 |
+---------+---------+
다음과 같은 결과를 얻을 수 있습니다.
+---------+---------+-----------------+
| column1 | column2 | column1=column2 |
+---------+---------+-----------------+
| value1 | value1 | true |
| value2 | value3 | false |
| value4 | value4 | true |
+---------+---------+-----------------+
이를 위한 올바른 구문은 무엇입니까?
null 값도 동일하게 간주하려면 다음을 수행하십시오.
select column1, column2,
case
when column1 is NULL and column2 is NULL then 'true'
when column1=column2 then 'true'
else 'false'
end
from table;
사용을 중지했습니다.DECODE휴대할 수 없기 때문에 몇 년 전에요.또, 이것은, 보다 유연성이 낮고, 가독성이 떨어집니다.CASE/WHEN.
단, NULL을 처리하는 방법 때문에 디코딩에서 할 수 있는 깔끔한 "꼼수"가 하나 있습니다.디코딩에서는 NULL은 NULL과 동일합니다.이를 이용하여 다음과 같이 두 열이 다른지 여부를 확인할 수 있습니다.
select a, b, decode(a, b, 'true', 'false') as same
from t;
A B SAME
------ ------ -----
1 1 true
1 0 false
1 false
null null true
select column1, coulumn2, case when colum1=column2 then 'true' else 'false' end from table;
HTH
언급URL : https://stackoverflow.com/questions/4827751/how-to-select-the-comparison-of-two-columns-as-one-column-in-oracle
반응형
'programing' 카테고리의 다른 글
| WooCommerce에서 바리에이션 선택 시 제품 페이지 가격 업데이트 (0) | 2023.03.23 |
|---|---|
| 스프링 부트 @Autowired with Kotlin in @Service는 항상 null입니다. (0) | 2023.03.23 |
| Spring Boot Data JPA with H2 and data.sql - 테이블을 찾을 수 없음 (0) | 2023.03.23 |
| WooCommerce 커스텀 필드 - 다중 선택 (0) | 2023.03.23 |
| json gem 설치 중 오류 발생 'mkmf.rb가 루비의 헤더 파일을 찾을 수 없습니다' (0) | 2023.03.23 |