[ORACLE]COUNT DECODE

Database 2018.06.04 09:23 Posted by 애플자라

SELECT '신청: '||TOTAL||'건(전체), '||P_TYPE||'건(PC), '||M_TYPE||'건(모바일)' AS EVENT_M

FROM

(

SELECT COUNT (1) AS TOTAL,

       COUNT (DECODE (TYPE, 'P', 'P')) AS P_TYPE,

       COUNT (DECODE (TYPE, 'M', 'M')) AS M_TYPE

  FROM N_BOARD_EVENT

)

[Util]ANSI <-> UTF-8 변환(Encode, Decode)

Programing 2015.09.17 10:43 Posted by 애플자라

 

utf-8.exe

 

ANSI <-> UTF8 일괄변환 Red UTF8

Tips 2010.08.28 12:40 Posted by 애플자라


서버 이전 작업을 하면서 서버의 환경이 UTF8로 변경되어 ANSI로 작업된 무수한 파일을 어떻게 변환해야할지
막막하기만 했는데.. Red UTF8 프로그램을 이용해서 수천개의 파일을 별 어렴움없이 변환을 완료하였다. 설치가
필요없는 프로그램으로 실행하면 위 이미지처럼 창이 뜬다. 폴더찾기 버틀을 클릭해 변환할 파일이 있는 폴더를
지저해주고 아래 UTF8 Encode 버튼을 클릭하면 파일 변환이 시작된다. 8,000개가 넘는 파일을 변환했는데도
그리 오랜 시간이 걸리지 않았다. 변환하고자 하는 확장자도 지정할 수 있기 때문에 너무 유용한 프로그램이다.


참조 - http://www.ncube.net/1890

[ORACLE] 구분자_LIST형_맵핑형_조합형쿼리

Database 2009.11.04 18:10 Posted by 애플자라

* TB_INST_INPUT테이블에 SUBS_VALUE 데이터가 |구분자로 값이 들어오는 경우

-- SUBS_VALUE 컬럼의 데이터를 | 구분자로 짤라 각각 매핍변수로 선언

SELECT SUB1,SUB2,SUB3,SUB4,SUB5,SUB6,SUB7,SUB8,SUB9,SUB10,SUB11,SUB12,SUB13,SUB14,
SUB15
    FROM(SELECT
            MAX(DECODE(rowno,1,aa)) SUB1
           ,MAX(DECODE(rowno,2,aa)) SUB2
           ,MAX(DECODE(rowno,3,aa)) SUB3
           ,MAX(DECODE(rowno,4,aa)) SUB4
           ,MAX(DECODE(rowno,5,aa)) SUB5
           ,MAX(DECODE(rowno,6,aa)) SUB6
           ,MAX(DECODE(rowno,7,aa)) SUB7
           ,MAX(DECODE(rowno,8,aa)) SUB8
           ,MAX(DECODE(rowno,9,aa)) SUB9
           ,MAX(DECODE(rowno,10,aa)) SUB10
           ,MAX(DECODE(rowno,11,aa)) SUB11
           ,MAX(DECODE(rowno,12,aa)) SUB12
           ,MAX(DECODE(rowno,13,aa)) SUB13
           ,MAX(DECODE(rowno,14,aa)) SUB14
           ,MAX(DECODE(rowno,15,aa)) SUB15
        FROM(
             SELECT SUBSTR( RCVDATA,
                    INSTR (RCVDATA, '|', 1, LEVEL) + 1,
                    INSTR (RCVDATA, '|', 1, LEVEL + 1) -
                    INSTR (RCVDATA, '|', 1, LEVEL) - 1 ) aa,
                    ROWNUM AS rowno
               FROM (SELECT '|' || SUBS_VALUE ||'|' RCVDATA
                           ,ROWNUM
                       FROM TB_INST_INPUT
                       --WHERE INSTID = '@{EMS_M_ID}'
                       )
                    CONNECT BY LEVEL<= LENGTH(RCVDATA) -
                    LENGTH(REPLACE(RCVDATA, '|')) - 1
        )
        WHERE ROWNUM <= '15'
    )
WHERE ROWNUM = 1


-- SUBS_VALUE 컬럼의 데이터를 | 구분자로 짤라 한개의 데이터로 조합


SELECT a1||a2||a3||a4||a5||a6||a7||a8||a9||a10||a11||a12||a13||a14  totaldata
    FROM(SELECT MAX(DECODE(rowno,1,aa)) a1
           ,MAX(DECODE(rowno,2,aa)) a2
           ,MAX(DECODE(rowno,3,aa)) a3
           ,MAX(DECODE(rowno,4,aa)) a4
           ,MAX(DECODE(rowno,5,aa)) a5
           ,MAX(DECODE(rowno,6,aa)) a6
           ,MAX(DECODE(rowno,7,aa)) a7
           ,MAX(DECODE(rowno,8,aa)) A8
           ,MAX(DECODE(rowno,9,aa)) a9
           ,MAX(DECODE(rowno,10,aa)) a10
           ,MAX(DECODE(rowno,11,aa)) a11
           ,MAX(DECODE(rowno,12,aa)) a12
           ,MAX(DECODE(rowno,13,aa)) a13
           ,MAX(DECODE(rowno,14,aa)) a14
        FROM(SELECT SUBSTR( RCVDATA,
                    INSTR (RCVDATA, '|', 1, LEVEL) + 1,
                    INSTR (RCVDATA, '|', 1, LEVEL + 1) -
                    INSTR (RCVDATA, '|', 1, LEVEL) - 1 ) aa
                    ,ROWNUM AS rowno
               FROM (SELECT '|' || SUBS_VALUE || '|' RCVDATA
                           ,ROWNUM
                       FROM TB_INST_INPUT)
                    CONNECT BY LEVEL<= LENGTH(RCVDATA) -
                    LENGTH(REPLACE(RCVDATA, '|')) - 1)
    WHERE ROWNUM <= '14'
    )
   
   
-- SUBS_VALUE 컬럼의 데이터를 | 구분자로 짤라 리스트 데이터로 조합   

SELECT SUBSTR( RCVDATA,
INSTR (RCVDATA, '|', 1, LEVEL) + 1,
INSTR (RCVDATA, '|', 1, LEVEL + 1) -
INSTR (RCVDATA, '|', 1, LEVEL) - 1 ) aa
FROM (SELECT '|' || SUBS_VALUE || '|' RCVDATA FROM TB_INST_INPUT)
CONNECT BY LEVEL<= LENGTH(RCVDATA) -
LENGTH(REPLACE(RCVDATA, '|')) - 1;

참조 - 이동준형 마음ㅋ

[ORACLE] NVL함수 & DECODE함수

Database 2009.05.13 10:37 Posted by 애플자라

오라클 함수

1. NVL함수
    NVL(value,1) 
     -> value가 null 일경우 1을 반환
                     그렇지 않을경우 value값을 반환
2.NVL2 함수  
NVL2(expr1, expr2, expr3) 함수는
   expr1이 null이 아니면 expr2를 반환하고,
   expr1이 null이면 expr3을 반환한다.

ex) select nvl2('','Corea','Korea') from dual;


3. DECODE 함수
   DECODE(value,null,"값1","값2")
   - > value값이 null일경우 "값1"을 반환
                       그렇지 않을 경우 "값2"반환
   DECODE함수의 1번인자와 2번인자를 비교하여 참일 경우 3번 인자, 거짓일 경우 4번 인자를 반환한다. 
TAG DECODE, NVL, Oracle

[ORACLE] CASE WHEN THEN, DECODE

Database 2007.12.27 08:56 Posted by 애플자라
CASE
        WHEN STDAY IN ('1900-01-01','3000-01-01') THEN NULL
        ELSE TO_CHAR(ENDDAY,'YYYY')||'-'||TO_CHAR(ENDDAY,'MM')||'-'||TO_CHAR(ENDDAY,'DD') END AS ENDDAY, --만기일


===================================================================================

DECODE(MMGG,'0','',TO_CHAR(MMGG,'9,999,999,999,999')) AS MMGG

'Database' 카테고리의 다른 글

[ORACLE] SEQUENCE 추가  (0) 2008.04.16
[ORACLE] 10g XE에서 8080포트바꾸기  (0) 2008.01.10
[ORACLE] CASE WHEN THEN, DECODE  (0) 2007.12.27
SQL*Plus에서 꼭 알아두어야 할 활용 매뉴얼!  (0) 2007.12.06
[MYSQL] 엔진구동방법  (0) 2007.12.06
[ORACLE]오라클종합  (0) 2007.12.04
TAG CASE, DECODE