반응형
Oracle에서 IFELL 사용
웹 개발자로서, 저는 IFELL을 다국어로 사용하는 방법을 알고 있습니다.하지만 Oracle용 TOD를 사용하여 보고서를 작성하는 방법을 배우고 있습니다.
제 질문은 어떻게 하면 IFELLS 문을 적절하게 추가할 수 있을까요?
이것이 제가 하려는 일입니다.오류: 명령이 제대로 종료되지 않았습니다.
(VikKIE to ICKY는 학습을 돕기 위해 상사로부터 저에게 임무를 맡겼습니다.)
SELECT DISTINCT a.item, b.salesman, NVL(a.manufacturer,'Not Set')Manufacturer
FROM inv_items a, arv_sales b
WHERE a.co = '100'
AND a.co = b.co
AND A.ITEM_KEY = b.item_key
--AND item IN ('BX4C', 'BX8C', 'BX866') --AND salesman ='15'
AND a.item LIKE 'BX%'
AND b.salesman in ('01','15')
AND trans_date BETWEEN to_date('010113','mmddrr')
and to_date('011713','mmddrr')
GROUP BY a.item, b.salesman, a.manufacturer
ORDER BY a.item
IF b.salesman = 'VIKKIE' THEN
a.salesman := 'ICKY';
END IF;
IFPL/SQL 구성입니다.쿼리를 실행하는 경우 PL/SQL이 아닌 SQL을 사용하는 것입니다.
SQL에서 다음을 사용할 수 있습니다.CASE쿼리 자체의 문
SELECT DISTINCT a.item,
(CASE WHEN b.salesman = 'VIKKIE'
THEN 'ICKY'
ELSE b.salesman
END),
NVL(a.manufacturer,'Not Set') Manufacturer
FROM inv_items a,
arv_sales b
WHERE a.co = '100'
AND a.co = b.co
AND A.ITEM_KEY = b.item_key
AND a.item LIKE 'BX%'
AND b.salesman in ('01','15')
AND trans_date BETWEEN to_date('010113','mmddrr')
and to_date('011713','mmddrr')
ORDER BY a.item
집계를 수행하지 않기 때문에 다음을 수행할 필요가 없습니다.GROUP BY당신의 질문에.당신이 정말로 필요하다고 확신합니까?DISTINCT사람들은 중복을 식별하고 제거하기 위해 추가 작업이 정말 필요한지 여부를 고려하기보다는 조인 조건이 누락되었을 때 그것을 임의로 던지거나 추가하는 경우가 많습니다.
사용할 수 있습니다.Decode또한:
SELECT DISTINCT a.item, decode(b.salesman,'VIKKIE','ICKY',Else),NVL(a.manufacturer,'Not Set')Manufacturer
FROM inv_items a, arv_sales b
WHERE a.co = b.co
AND A.ITEM_KEY = b.item_key
AND a.co = '100'
AND a.item LIKE 'BX%'
AND b.salesman in ('01','15')
AND trans_date BETWEEN to_date('010113','mmddrr')
and to_date('011713','mmddrr')
GROUP BY a.item, b.salesman, a.manufacturer
ORDER BY a.item
언급URL : https://stackoverflow.com/questions/14386881/using-if-else-in-oracle
반응형
'programing' 카테고리의 다른 글
| 객체 리터럴로 선언된 녹아웃 뷰 모델과 함수 간의 차이 (0) | 2023.08.04 |
|---|---|
| Android - 텍스트에 그림자? (0) | 2023.08.04 |
| NumPy의 전치() 방법은 배열의 축을 어떻게 치환합니까? (0) | 2023.08.04 |
| 스프링 스케줄링: @스케줄링 대 쿼츠 (0) | 2023.08.04 |
| 타자 스크립트를 사용하여 각도 2에서 장치 디스플레이의 높이와 너비를 얻는 방법은 무엇입니까? (0) | 2023.08.04 |