1. CAST(expr AS type)
    • expr을 type으로 명시적 형 변환 시킴
  2. TO_CHAR(expr [, fmt])
    1. 날짜 형식 지정 문자열
      • CC 세기 / dc, ad 서기
      • Q 분기
      • YYYY,YYY,YY,Y 년도
      • MM, MON, MONTH, RM 월
      • D, DD, DDTH, DDD 일
      • DAY 요일
      • HH, HH12, HH24 시간
      • MI 분
      • SS, SSSS 초
      • "문자열" 쌍따옴표 안의 문자열 표기
    2. 숫자 형식 지정 문자열
      • 9 대응되는 데이터가 유효숫자이면 해당 숫자를, 무효의 0이면 공백을 출력
      • 0 대응되는 데이터가 유효숫자이면 해당 숫자를, 무효의 0이면 '0'을 출력
      • L($) 화폐 기호 출력
      • PR 음수자료이면 '<>'안에 데이터 출력
      • 소수점(.) 소수점 지정
      • 콤마(,) 자리점 출력(3자리마다 ,)
  3. TO_DATE(expr [, fmt])
    • expr로 기술된 문자자료를 fmt형식에 맞는 날짜형으로 변환
    • fmt : YYYY:MM:DD 와 같은 형식 등이 있다
    • 날짜형 데이터 형식에 맞지 않는 형식 지정 문자열은 무시되고 기본 날짜형이 적용
    • 상용되는 형식 지정문자열은 TO_CHAR와 같음
    • 반환 타입은 날짜
  4. TO_NUMBER(expr [, fmt])
    • expr로 기술된 문자자료를 fmt형식에 맞는 숫자형 자료로 변환
    • fmt : 999.00 과 같은 형식 등이 있다
    • fmt형식은 숫자로 처리될 수 있는 형식 문자열이어야 된다
    • expr에 숫자로 변환 불가능한 자료가 포함되어서는 안 된다
    • 사칙연산이 가능한 형태여야 한다
    • 콤마 포함 시 문자열로 취급되기 때문에 사용할 수 없다
    • 소수점 자리는 일치시켜야 한다
    • fmt에 기술한 숫자의 소숫점 자리가 expr에 적은 소숫점 자리보다 적으면 오류가 발생한다
    • fmt를 기술하지 않으면 자동으로 소숫점 자리를 맞춰주기 때문에 안 써주는 것이 제일 좋다

'DataBase > Oracle' 카테고리의 다른 글

13. Function - NULL 처리 함수  (0) 2021.07.24
12. Function - 집계함수  (0) 2021.07.24
10. Function - 날짜 함수  (0) 2021.07.24
9. Function - 숫자 함수  (0) 2021.06.22
8. Function - 문자열 함수  (0) 2021.06.22
  1. SYSDATE
    • 시스템이 제공하는 날짜 및 시각 정보
    • 정수 자료와 연산이 가능하다(덧셈, 뺄셈) 결과는 날짜 타입으로 반환된다
  2. EXTRACT(fmt FROM d1)
    • fmt에는 year, month, day, hour, minute, second를 입력할 수 있다
    • 날짜 자료 d1에서 frm에 입력한 정보를 가져온다
  3. ADD_MONTHS(d1, n)
    • 주어진 날짜 자료 d1에 n개월을 더한 값을 반환
  4. NEXT_DAY(d1, fmt), LAST_DAY(d1)
    • NEXT_DAY : d1날짜 이후 처음 만나는 fmt(월, 화...)로 정의된 요일에 해당하는 날짜 반환
    • LAST_DAY : d1날짜 자료에 포함된 월의 마지막 날을 반환(리턴 타입 날짜)
  5. MONTHS_BETWEEN(d1, d2)
    • 두 날짜 자료 d1과 d2사이의 달 수 반환

'DataBase > Oracle' 카테고리의 다른 글

12. Function - 집계함수  (0) 2021.07.24
11. Function - 변환함수  (0) 2021.07.24
9. Function - 숫자 함수  (0) 2021.06.22
8. Function - 문자열 함수  (0) 2021.06.22
7. 연산자(Operator)  (0) 2021.06.18
  1. 수학적 함수
    • ABS(n) : n의 절댓값 반환
    • SIGN(n) : n의 부호에 따라 양수이면 1, 음수이면 -1, 0이면 0을 반환
    • COS(n), SIN(n), TAN(n) : 삼각함수의 값 반환
    • SQRT(n) : n의 제곱근 반환
    • POWER(n, a) : n의 a승 값
    • EXP(n) : 지수 함숫값
  2. GREATEST(n1, n2 [, n3,....]), LEAST(n1, n2[, n3, ....])
    • 주어진 자료에서 가장 큰 값(GREATEST), 작은 값(LEAST)을 찾아 반환
  3. ROUND(n1 [, n2]), TRUNC(n1 [, n2])
    • ROUND : 주어진 수 n1의 소수점 이하 n2 + 1번째 자리에서 반올림
    • TRUNC : 주어진 수 n1의 소숫점 이하 n2 + 1번째 자리부터 절삭(반올림되지 않음)
    • n2가 음수이면 정수 부분의 n2자리에서 반올림(ROUND)또는 절삭(TRUNC) / 0으로 반환
      • -1, -10, -100 순으로 1, 10, 100의 자리가 됨
    • SELECT ROUND(123.456, 1) FROM DUAL;
      //출력 : 123.5
      SELECT ROUND(567.899, -2) FROM DUAL;
      //출력 : 600
      SELECT TRUNC(123.456, 1) FROM DUAL;
      //출력 : 123.4
      SELECT TRUNC(567.899, -2) FROM DUAL;
      //출력 : 500
      • n2가 음수, 양수에 관계없이 ROUND는 올림, TRUNC는 버림이 된다.
  4. MOD(n1, n2)
    • n1을 n2로 나눈 나머지를 반환한다
    • SELECT MOD(10, 3) FROM DUAL;
      //출력 : 1
  5. REMAINDER(n1, n2)
    • n1을 n2로 나눈 나머지를 반환한다
    • SELECT REMAINDER(10, 3) FROM DUAL;
      //출력 : 1
    • MOD와 REMAINDER 모두 나머지를 반환하지만 내부적으로 동작하는 방식이 다르다
    • 일반적으로는 MOD를 많이 사용한다
  6. WIDTH_BUCKET(n1, min, max, block_cnt)
    • 하한 값 min과 상한 값 max로 정한 구간을 block_cnt개수의 블록으로 나누었을 때  n1이 속한 구간 순번을 반환
    • min, max값은 반대로 대입도 가능하다
    • 아래의 코드는 참고를 위해 조인과 케이스 등을 사용하였지만 대략적인 사용방법만 알고 넘어가도록 하자
    •   SELECT A.EMP_NAME AS 사원명,
               C.DEPARTMENT_NAME AS 부서명,
               B.JOB_TITLE AS 직무명,
               A.SALARY AS 급여,
               CASE WHEN WIDTH_BUCKET(A.SALARY, 2000, 20000, 3)=1 THEN
                         '저임금 사원'
                    WHEN WIDTH_BUCKET(A.SALARY, 2000, 20000, 3)=2 THEN
                         '평균임금사원'
                    ELSE
                         '고임금사원'
                    END AS 비고
          FROM HR.EMPLOYEES A, HR.JOBS B, HR.DEPARTMENTS C
         WHERE A.DEPARTMENT_ID=C.DEPARTMENT_ID
               AND A.JOB_ID=B.JOB_ID
      ORDER BY 4;
    • 위와 같이 출력이 되며 급여를 기준으로 3구간으로 나눠서 저임금, 평균임금, 고임금 사원으로 나눈 결과이다.

'DataBase > Oracle' 카테고리의 다른 글

11. Function - 변환함수  (0) 2021.07.24
10. Function - 날짜 함수  (0) 2021.07.24
8. Function - 문자열 함수  (0) 2021.06.22
7. 연산자(Operator)  (0) 2021.06.18
7. 자료형(Data type)  (0) 2021.06.17
  1. CONCAT(c1, c2)
    • || 과 똑같이 동작한다.
    • 문자열 c1과 문자열 c2를 결합해주는 함수이다.
    • c1과 c2사이에 문자를 넣어주고 싶으면 2중으로 사용을 해줘야 하는 불편함이 있다.
    • SELECT CONCAT('HELLO', 'SQL') FROM DUAL;
      //출력 : HELLOSQL
      SELECT 'HELLO'||' '||'SQL' FROM DUAL;
      //출력 : HELLO SQL
    • 위와같이 CONCAT의 경우 문자열을 결합할 때 문자열 사이에 문자를 넣어줄 수 없다는 단점이 있다.
    • 하지만 ||의 경우 문자열 사이에 문자로 연결자를 넣어주기 편함으로 CONCAT대신 ||를 추천한다.
  2. LOWER(c1), UPPER(c1), INITCAP(c1)
    • LOWER : c1에 저장된 자료를 모두 소문자로 변환
    • UPPER : c1에 저장된 자료를 모두 대문자로 변환
    • INITCAP : c1에 저장된 자료중 단어의 첫 글자만 대문자로 변환
      • 변환 시 단어의 첫 글자 확인은 공백을 구분자로 한 칸 이상의 공백이 있으면 공백 다음 단어가 첫 글자
    • SELECT LOWER('HELLO') FROM DUAL;
      //출력 : hello
      SELECT UPPER('hello') FROM DUAL;
      //출력 : HELLO
      SELECT INITCAP('HELLO SQL HELLOSQL hello sql hellosql') FROM DUAL;
      //출력 : Hello Sql Hellosql Hello Sql Hellosql
  3.  LPAD(c1, n [, c2]), RPAD(c1, n[,c2])
    • LPAD : n의 길이만큼 기억공간에 왼쪽부터 c1을 채우고 남는 공간은 c2를 채움
    • RPAD : n의 길이만큼 기억공간에 오른쪽부터 c1을 채우고 남는 공간은 c2를 채움
    • SELECT LPAD('1234567', 10, '*') FROM DUAL;
      //출력 : ***1234567
      SELECT RPAD('1234567', 10, '*') FROM DUAL;
      //출력 : 1234567***
    • 10의 길이를 만들어주고 처음 주어진 문자열을 L의 경우에는 오른쪽에 붙이고 남은 공간을 *로, R의 경우에는 왼쪽에 붙히고 남은 공간을 *로 채워준다
  4. LTRIM(c1 [,2]), RTRIM(c1 [,2]), TRIM(c1)
    • c1의 우측(RTRIM)또는 좌측(LTRIM)에서 첫 번째로 만나는 문자열이 c2와 같으면 삭제
    • c2가 삭제되면 공백은 제거된다.
    • TRIM : c1양쪽의 무효 공백 제거
      • 무효 공백 : 데이터 사이의 공백이 아닌 데이터가 나오기 전과 나온 후의 공백
      • 유효 공백 : 데이터 사이의 공백. 유효 공백은 아스키코드값으로도 나와있다(40)
        • 유효공백은 LTRIM, RTRIM, TRIM으로는 제거가 불가능하고 REPLACE로 삭제가 가능하다
    • SELECT LTRIM('APPLE', 'AP') FROM DUAL;
      //출력 : LE
      SELECT LTRIM('          APPLE') FROM DUAL;
      //출력 : APPLE
      SELECT RTRIM('APPLE', 'LE') FROM DUAL;
      //출력 : APP
      SELECT RTRIM('APPLE         ') FROM DUAL;
      //출력 : APPLE
      SELECT TRIM('          APPLE BANANA ORANGE STRAWBERRY          ') FROM DUAL;
      //출력 : APPLE BANANA ORANGE STRAWBERRY
    • c2를 생략한 경우 공백이 삭제된 것을 볼 수 있고 TRIM의 경우 양쪽 공백만 삭제된 것을 확인할 수 있다
  5. SUBSTR(c1, n1 [, n2])
    • 주어진 문자열 c1의 n1번째 인덱스부터 시작해서 n2의 개수만큼 글자를 부분 문자열로 추출하여 반환한다
    • n2가 생략되면 n1번째 인덱스부터 나머지 글자를 모두 추출하여 반환한다.
    • n1의 시작 인덱스는 1이며 0을 입력해도 1과 같이 동작한다
    • n1이 음수이면 제일 오른쪽 자리부터 처리된다
    • n2가 글자보다 많으면 c1이 가지고 있는 문자만큼만 출력한다
    • SELECT SUBSTR('무궁화 꽃이 피었습니다.', 1) FROM DUAL;
      //출력 : 무궁화 꽃이 피었습니다.
      SELECT SUBSTR('무궁화 꽃이 피었습니다.', 0, 3) FROM DUAL;
      //출력 : 무궁화
      SELECT SUBSTR('무궁화 꽃이 피었습니다.', 1, 3) FROM DUAL;
      //출력 : 무궁화
      SELECT SUBSTR('무궁화 꽃이 피었습니다.', 1, 50) FROM DUAL;
      //출력 : 무궁화 꽃이 피었습니다.
      SELECT SUBSTR('무궁화 꽃이 피었습니다.', -5, 10) FROM DUAL;
      //출력 : 었습니다.
    • 0과 1이 동일하게 동작하며, c2를 삭제하거나 문자열의 길이보다 큰 값을 입력하면 끝까지 출력되고, 마이너스 인덱스를 입력하면 오른쪽부터 숫자를 세서 출력을 해준다.
  6. REPLACE(c1, c2 [, c3])
    • 주어진 문자열 c1에서 c2를 찾아 c3로 치환한다
    • c3가 생략되면 c2를 삭제한다
    • c3를 생략하고 c2에 공백을 넣으면 c1안에 모든 공백을 삭제한다.
    • SELECT REPLACE('무궁화 꽃이 피었습니다.', '무궁화', '진달래') FROM DUAL;
      //출력 : 진달래 꽃이 피었습니다.
      SELECT REPLACE('무궁화 꽃이 피었습니다.', '무궁화') FROM DUAL;
      //출력 :  꽃이 피었습니다.
      SELECT REPLACE('    무궁화 꽃이 피었습니다.    ', ' ') FROM DUAL;
      //출력 : 무궁화꽃이피었습니다.
    • 두 번째 예제의 경우 공백은 선택이 되지 않았으므로 삭제되지 않고 앞에 남아있는 걸 볼 수 있고 세 번째 출력문의 경우 모든 유효 공백과 무효 공백이 사라진다
  7. INSTR(c1, c2 [, m [, n]]) / INDEX OF STRING
    • 주어진 문자열 c1에서 문자열 c2가 처음 나타난 위치를 반환
    • m : 검색의 시작 위치를 지정
    • n : 문자열 c1에서 찾으려는 문자열 c2가 n번째로 나오는 위치를 반환
      • 없는 경우 NULL이 아닌 0을 리턴
    • SELECT INSTR('APPLE BANANA ORANGE STRAWBERRY', 'E') FROM DUAL;
      // 출력 : 5
      SELECT INSTR('APPLE BANANA ORANGE STRAWBERRY', 'E', 6) FROM DUAL;
      // 출력 : 19
      SELECT INSTR('APPLE BANANA ORANGE STRAWBERRY', 'E', 6, 2) FROM DUAL;
      // 출력 : 27
      1. 'APPLE BANANA ORANGE STRAWBERRY'라는 문자열에서 첫 번째로 나온 E의 위치 5를 반환
      2. 위의 문자열에서 6번째 인덱스 이후로 처음 나오는 E의 위치 19를 반환
      3. 위의 문자열에서 6번째 인덱스 이후로 2번째로 나오는 E의 위치 27을 반환

'DataBase > Oracle' 카테고리의 다른 글

10. Function - 날짜 함수  (0) 2021.07.24
9. Function - 숫자 함수  (0) 2021.06.22
7. 연산자(Operator)  (0) 2021.06.18
7. 자료형(Data type)  (0) 2021.06.17
6. Selec  (0) 2021.06.14
  • 산술 연산자
    • 사칙 연산자
      • +, -, /, *
      • 프로그래밍 언어와 다르게 나머지를 구하는 연산자는 사용하지 못하고 위의 네 가지 연산자만 사용이 가능하다
      • 나머지를 구할때는 수식을 작성하거나 MOD함수를 사용해야 한다
    • 관계 연산자
      • 크기의 비교에 사용되며 조건절 구성에 사용된다(WHERE)
      • <, >, <=, >=, =, (!=, not=, <>)
      • 괄호로 묶인 세 가지는 동일하게 사용이 가능하다
      • 순서대로 (초과, 미만) / (이상, 이하) / (같다, 다르다)
    • 논리 연산자
      • not, and, or
      • 우선순위는 위의 작성한 순서대로 not > and > or 순이다
      • 두 개 이상의 조건을 결합하거나(and, or), 논리 부정(not) 연산을 수행한다
      • and와 or은 이항 연산
      • not은 단항 연산
    • 기타 연산자
      • in
        • 질의 탐색을 위해 상용될 둘 이상의 표현식을 지정
        • 불연속적인 값의 비교에 주로 사용
        • 서브 쿼리가 사용되는 경우 서브 쿼리의 결과가 다중행을 반환하는 경우에는 반드시 in연산자를 사용해야 한다
        • =any, =some, or로 치환 가능하다
      • any, some
        • 기능은 in연산자와 동일하다
        • 사용방법은 =any, =some으로 사용해야 한다
      • between
        • 범위 지정에 사용되며 논리 연산자 and로 대치 가능하다
      • like
        • 칼럼에 저장된 값을 제시된 패턴과 비교하여 문자열 형태가 동일한 행을 검색하는 연산자
        • % : %가 쓰인 위치에서 모든 문자열과 대응됨
          • ex1) '김%' : '김'으로 시작하는 모든 문자열 반환
          • ex2) '% 김' : '김'으로 끝나는 모든 문자열 반환
        • _ : _가 쓰인 위치에서 한 문자와 대응됨
          • _는 하나의 문자를 의미하며 여러 개를 중첩해서 사용이 가능하다
          • ex) '김__' : '김'으로 시작하는 3자리 문자열 반환

'DataBase > Oracle' 카테고리의 다른 글

9. Function - 숫자 함수  (0) 2021.06.22
8. Function - 문자열 함수  (0) 2021.06.22
7. 자료형(Data type)  (0) 2021.06.17
6. Selec  (0) 2021.06.14
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
  1. 문자열 자료형
    • char(n [byte|char])
      • 고정길이 문자열 저장
      • 2000byte까지 저장 가능
        • 한글 한 글자는 3byte 666글자 저장 가능, 영어 한 글자는 1byte 2000글자 저장 가능
      • 기억공간이 남으면 왼쪽에 공백 삽입
      • [byte|char]
        • n은 기억공간의 크기를 나타냄
        • byte는 nbyte를 의미하며 아무것도 작성하지 않을 시 기본으로 byte가 설정된다
          • char(20) == char(20 byte)
        • char는 n글자를 의미하며 1 글자당 2byte로 설정된다.
          • char(5 char) =>10byte의 저장 공간이 생김
        • char는 사용하지 않는 것을 추천
    • varchar(n [byte|char]), varchar2(n [byte|char])
      • 가변 길이 문자열 저장
      • 4000byte까지 저장 가능
      • 정의된 데이터가 확보된 기억공간 보다 적으면 남은 공간은 시스템이 반납
        • 사이즈가 입력된 데이터의 사이즈에 맞게 수정됨(설정한 n값 안에서)
      • varchar와 varchar2는 기능적으로 동일하지만 오라클에서는 varchar2 사용을 권장
    • long
      • 가변 길이 문자열 저장
      • 한 테이블에 하나만 사용 가능
      • clob로 대체
      • 사용 영역의 제한
        • Selec문의 Selec절, Update문의 Set절, Insert문의 Values절에만 사용 가능
    • clob
      • Charactor Large Object의 준말
      • 대용량 문자 자료형
      • 한 칼럼이 4GB
      • 문자열에 관련된 함수의 제약이 있다
      • 가변 기억 공간
      • long과 다르게 한 테이블에 사용할 수 있는 칼럼 개수는 제한이 없다
      • 일부 기능은 DBMS_LOB API의 지원을 받아야 한다
    • nchar
      • 오라클은 기본적으로 아스키코드로 인코딩을 하는데 한글 등 UTF-8, 16을 사용해야 할 때 사용
      • 그냥 char를 사용해도 된다.
  2. 숫자 자료형
    • number[(정밀도)|*[, 스케일]]
      • 숫자의 크기를 입력해줄 필요가 없다
      • 정밀도 : 전체 자릿수(1~38)
      • 스케일 : 소수점 이하의 자릿수
        • number(5, 2) => 전체 5자리 중 소수점 이하가 2자리이고 이곳에는 소수점 3자리에서 반올림된 값이 저장. 정수 부분의 자리는 3자리
      • 정밀도 > 스케일 => 일반적인 케이스
      • 정밀도 < 스케일 => 매우 희귀한 케이스
  3. 날짜 자료형
    • date
      • 년, 월, 일, 시, 분, 초 자료를 저장하기 위한 자료형
      • 년월일과 시분초로 나누어지며 시분초를 안 쓰면 0시 0분 0초가 됨
      • +와 -연산의 대상
      • 정수를 더하거나 뺄 때는 day가 변함
      • day - day를 하면 두 일자의 차이가 나옴
      • sysdate = 시스템에서 제공하는 날짜 정보(우측 하단의 시간과 동일)
    • timestamp
      • 시간 대역(time zone) 정보를 포함한 날짜 정보를 저장
      • 10억 분의 1초 단위 사용
      • 종류
        • timestamp : 시간대 정보 없음
        • timestamp with local time zone : 서버가 설치된 시간대 정보로 보통 timestamp와 동일
        • timestamp with time zone : 시간대 정보(대륙명/도시명) 제공
  4. 기타 자료형
    • 2진 자료형 : 2진 데이터를 저장하기 위한 자료형 / 아래 자료형이 거의 비슷하다
    • raw
      • 상대적으로 작은 2진 자료 저장
      • 인덱스 처리 가능
      • 최대 2000byte까지 저장 가능
      • 16진수, 2진수 저장 가능
      • raw(size)
    • bfile(가장 많이 사용됨)
      • 대상이 되는 2진 자료는 데이터베이스 밖에 저장하고 DB에는 경로와 파일명만 저장
      • 4GB까지 저장 가능
      • 파일명은 영어 권장
      • 디렉터리(폴더)의 별칭은 30byte, 파일명은 256byte까지 사용 가능하다
      • 디렉터리 객체를 생성해 줘야 하며 위치 값은 절대 경로로 입력해 준다.
    • blob
      • 대상이 되는 2진 자료가 테이블 내부에 저장된다
      • 4GB까지 저장 가능
      • 일반적인 방법으로는 저장이 불가능하고(Insert 사용 불가), declare > begin > end를 사용해서 데이터를 저장해준다.

'DataBase > Oracle' 카테고리의 다른 글

8. Function - 문자열 함수  (0) 2021.06.22
7. 연산자(Operator)  (0) 2021.06.18
6. Selec  (0) 2021.06.14
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14

select는 SQL을 사용할 때 제일 중요한 명령어다.

테이블을 생성하고 데이터를 삽입한다고 해도 불러올 수 없다면 의미가 없다.

 

select [컬럼명] [as] ["][별칭]["][,]
	from [테이블명]
    where [조건]
    group by [컬럼명]
    having [조건]
    order by [컬럼명|컬럼인덱스 [asc]|[desc]];

select문은 총 6개의 절로 구성되어있다.

먼저 처리 순서는 아래와 같다.

from -> where -> group by -> having -> order by -> select

 

필수적인 요소로는 select * from dual 과 같이 select, from은 꼭 사용을 해야 한다.

그 뒤로 where, group by, having, order by를 사용하여 조건, 정렬 등을 사용할 수 있다.

  • select
    • 칼럼명 부분에 *를 사용하면 모든 칼럼을 불러온다
    • 단일 칼럼부터 테이블 안의 모든 칼럼, 다른 테이블의 칼럼까지도 가져올 수 있다.
    • as뒤에 별칭으로는 칼럼 명의 길이가 너무 긴 경우에 별칭으로 짧게 보여줄 수 있다.
      • 큰따옴표를 사용하지 않아도 되지만 공백, 특수문자가 들어가는 경우 반드시 사용해야 한다
      • 숫자를 별칭으로 사용할 수 있지만 숫자로 시작할 수는 없다.
  • from
    • 테이블 명 혹은 뷰만 올 수 있으며 서브 쿼리가 사용될 경우 서브 쿼리의 결괏값이 무조건 테이블 혹은 뷰가 돼야 한다
    • 테이블명 뒤에 별칭을 줄 수 있다.
  • where
    • 일반적으로 조건을 줄 때 사용되며 예를 들어 어떤 테이블의 모든 값을 불러오는데 age가 20 이상인 데이터만 불러와라 라고 할 때 밑줄 친 부분이  where절의 조건이 된다.
  • group by
  • having
    • where절과 같이 조건을 줄 때 사용되는 건 같지만 조건 안에 그룹 함수가 있다면 having절에 사용해주는 게 맞다
  • order by
    • 정렬을 해주는 절이다
    • 칼럼명 혹은 컬럼 인덱스를 넣어줄 수 있는데 칼럼이 id, name, age 이렇게 있다면 id를 넣어주면 id값을 기준으로 잡을 수 있고 2를 넣어주면 입력한 칼럼 중 두 번째인 name을 기준으로 잡아서 정렬을 한다
    • 뒤에 asc, desc은 오름차순, 내림차순 정렬을 의미하며 입력하지 않을 시에는 asc이 기본값으로 잡힌다.

'DataBase > Oracle' 카테고리의 다른 글

7. 연산자(Operator)  (0) 2021.06.18
7. 자료형(Data type)  (0) 2021.06.17
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14
3. DDL(Data Definition Language) - Create  (0) 2021.06.10

Drop은 테이블을 삭제할 때 사용되는 명령어다

 

drop table [테이블명];

drop을 사용하면 되돌릴수 없으므로 신중하게 처리해야 한다.

또한 삭제 시에 연쇄 속성이 설정되어있을 경우 하위 테이블 혹은 상위 테이블의 연쇄 삭제가 발생할 수 있으므로 조심해야 한다.

 

연쇄 속성을 삭제하려면

alter table [테이블명]
	drop constraint [제약조건명];

이렇게 작성을 해주면 FK 잡힌 제약조건이 삭제된다.

이렇게 된다면 참조되는 부분이 사라지므로 다른 테이블과의 참조 관계와 상관없이 단독적인 테이블 삭제가 가능하다.

'DataBase > Oracle' 카테고리의 다른 글

7. 자료형(Data type)  (0) 2021.06.17
6. Selec  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14
3. DDL(Data Definition Language) - Create  (0) 2021.06.10
2. SQL  (0) 2021.06.08

+ Recent posts