[Oracle] 간단 정리*

헤이베이지 HeyBeige

·

2021. 2. 10. 17:20


    

   

SQL (오라클을 실행하는 언어 ) => 검색 ( SELECT)         
        DML (데이터 관리(조작) ) => 웹프로그래머
            = SELECT : 데이터 찾기 
            = INSERT : 데이터 추가
            = UPDATE : 데이터 수정
            = DELETE : 데이터 삭제
            
        DDL : 생성 (테이블, 뷰...)
            CREATE , DROP , ALTER , RENAME , TRUNCATE
        DCL : REVOKE , GRANT 
        TCL : COMMIT , ROLLBACK 
        
        Table : 저장공간 ( column , row) => 단위 row
        
        1) SELECT : 데이터 검색
              형식)
                ===============================================================
                SELECT * (전체) | 원하는 데이터만 출력 (column1 , column2..)
                FROM 테이블명 (뷰명 , SELECT~~)
                ===============================================================필수
Option      [
                    1.WHERE 조건문 (형식 컬럼명 연산자 값)  ==> 연산자
                                         name = '홍길동'
                    ================================================
                    2.GROUP BY 컬럼명 ==> 집합함수
                    3.HAVING 그룹조건
                    ================================================
                    4.ORDER BY 컬럼명 ASC|DESC => ASC는 생략이 가능
                                  ======번호사용 (컬럼의 위치번호)
                                  ====== , 이중 정렬
                ]


        2) 연산자
            = 산술 연산자 : + ,-,*,/ , %(MOD)
              ===========  형변환 => 1+ '1' = 2 자동으로 문자열 1이 정수로 형변환 된다.
                        변환 함수 => TO_CHAR , TO_NUMBER , TO_DATE
            = 비교 연산자 : 결과값 : boolean(true/false)
                = (같다) <-> [ != , <> , ^= ]
                <,>,<=,>=
            = 논리연산자 : 결과값 : boolean(true . false)
                AND , OR
                ** & : 입력값을 받는 경우
                ** || : 문자열의 결 합
            =IN => 여러개의 OR를 대체
            =BETWEEN ~ AND   :   >= AND =<(기간, 범위)
            =NOT :부정 => NOT BETWEEN , NOT LIKE , NOT IN (!는 자바에서의 부정)
            =LIKE : %(문자열 제한이 없다), _(한글자)
                    => 한계 => REGEXP_LIKE() : LIKE를 보완한 함수
                    
            =NULL : 모든 연산자는 NULL값을 처리 할 수 없다
                    IS NULL
                    IS NOT NULL
                    
              
        3) 내장 함수
            = 단일행 함수 (ROW 단위로 변경)
                문자 함수 
                | LENGTH('') : 문자 개수
                | SUBSTR(문자열,문자시작 인덱스,개수) : 문자를 자를 경우 -> 오라클 INDEX 시작(1)
                | INSTR(문자열,찾는문자,문자 시작번호,문자위치번째) 출력 되는 데이터: INDEX 번호
                |    ->INSTR('A-B-C-D','-',1,3) => 6
                | RPAD(문자열,문자출력개수,'채울문자')
                |    -> RPAD ('ABC',7,'*') => ABC**** : ID/PWD찾기 
                숫자 함수
                | ROUND() :반올림
                | TRUNC() : 버림
                | CEIL() : 올림
                날짜 함수
                | SYSDATE : 현재 날짜, 시간 -> 등록일은 자동으로 처리
                | MONTH_BETWEEN => 과거부터 현재까지의 총 개월수를 출력 -> 게시물 (3-6개울 ㅈ;움       )
                변환 함수
                | TO_CHAR
                |   -> 년도 : YYYY,RRRR, YY,RR
                |   -> 월 :MM(03) , M(3) 
                |   -> 일 :DD
                |   -> 시간: HH24 , HH , MI (분), SS(초)
                |   -> 숫자표현 : 999,999
                일반 함수
                | NVL : NULL값 대체
                | NVL2 : NULL 처리 , NOT NULL 처리
                |    NVL2(컬럼명,NULL이 아닌 경우 처리, NULL일 경우 처리 )
                |          =======
                |          NULL을 포함하고 있는 데이터 컬럼
                | DECODE : 다중 조건문
                | CASE : 다중 선택문
                | REGEXP_LIKE : 정규식을 이용한 함수
                |   [ ],{ }
                |   [ ] => 한글자, 범위 지정이 가능 [A],[A-Z][a-z][0-9][가-힣]
                |   { } => 글자 개수 {3}= 세글자 {1,3}=한글자에서 세글자 사이 
                |   .  => _ (한글자)
                |   [^] => 재외 [^A-Z] =>알파벳 대문자 제외하고
                |   ^ => 시작 ^A=(대문자 A로 시작했다) ^[0-9]=(숫자로 시작한다) 
                |   $ =>A$ [0-9]$
                |   | =>A|B => A OR B == A 나 B
                |   * => A* (뒤에 붙는 글자가 0개 이상)
                |   + => A+ (뒤에 붙는 글자가 1개 이상)
                |      맛있+
            = 다중행 함수 (집합 함수) =>통계 (합, 평균 , Rank ...)


        4) 여러개의 테이블 연결후 결과값 얻기(JOIN)


        5) SQL문장 여러개를 합쳐서 한개의 SQL문장으로 만드는 것 - 서브쿼리 


      =====================================================DDL(제약조건) => DML
        6) VIEW , INDEX , SEQUENCE , FUNCTION , PROCEDURE , TRIGGER