ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SQL Select 개요 & Desc & Distinct
    Data Base_Oracle/SQL 2019. 12. 31. 21:11

    Select 사용법 및 예제

    해당 계정의 모든 table 확인

    ▶ SQL> select * from tab;

    TNAME TABTYPE CLUSTERID
    BONUS(보너스 정보) TABLE  
    DEPT(부서 정보) TABLE  
    EMP(직원 정보) TABLE  
    SALGRADE(급여 등급 정보) TABLE  

    desc 테이블 구조 확인

    ▷ 형식) SQL> desc 테이블명
    ▶ SQL> desc emp

    이름 널? 유형
    EMPNO(사원 번호) NOT NULL(필수 입력) NUMBER(4) : 숫자, 4자리수
    ENAME(사원 이름)   VARCHAR2(10) : 문자열, 10byte
    JOB(직책/업무)   VARCHAR2(9)
    MGR(직속상관 사원 번호)   NUMBER(4)
    HIREDATE(입사일)   DATE : 날짜
    SAL(급여)   NUMBER(7,2) : 전체 7자리중에서
    소수점 2자리까지 표현    
    COMM(보너스)   NUMBER(7,2)
    DEPTNO(부서 번호)   NUMBER(2)

    테이블 내의 모든 필드 조회

    ▶ SQL> select * from emp;
    emp 테이블의 모든 값을 보여줌

    EMPNO ENAME JOB HIREDATE SAL COMM DEPTNO
    7369 SMITH CLERK 7902 80/12/17 800  
    7499 ALLEN SALESMAN 7698 81/02/20 1600 300
    중략 ... ... ... ... ... ...

    테이블에서 특정 필드 조회

    ▷ 형식) SQL> select 필드명1, 필드명2, 필드명3,,,,,,(순서 상관 X) from 테이블명
    ▶ SQL> select empno,ename,job from emp;

    EMPNO ENAME JOB
    7369 SMITH CLERK
    7499 ALLEN SALESMAN
    ... ... ...

    DISTINCT

    distinct : 중복된 데이터를 한 번만 출력 ex) 회사 내 직책
    ▷ 형식 SQL> distinct 필드명, 필드명,,,,
    ▶ emp테이블에서 직책의 종류만 나오도록 출력
    SQL> select distinct job from emp;

    JOB
    CLERK
    SALESMAN
    ...

    날짜 데이터 조회

    ※ 값은 문자형으로 저장, 범위는 숫자형으로 처리

    ▶ '81/02/22'이후에 입사한 직원의 이름과, 입사일을 emp테이블에서 조회
    SQL> select ename,hiredate from emp where hiredate >= '81/02/22';

    ENAME HIREDATE
    WARD 81/02/22
    JONES 81/04/02
    ... ...

    ※ 별칭[가상필드]부여 : 연산 가능, 영어 데이터를 한글로 표현하는 것도 가능

    • " " : 대소문자를 구분하거나 특수기호(#, _ , $ 등), 공백을 표현하고 싶을 때 사용

    • ▷ 형식) SQL> select 필드명 as 별칭명 from 테이블명 // as 생략 가능

    • ▶ 예제) emp테이블에서 ename에 "사원이름", job에 '업무'라는 별칭을 지정하고,
      사원 번호, 이름, 업무순으로 조회
      SQL> select empno,ename as "사원이름",job 업무 from emp ;

      EMPNO 사원이름 업무
      7369 SMITH CLERK
      7499 ALLEN SALESMAN
      ... ... ...

    select는 테이블 내의 자료를 검색/조회할 때 사용하다보니 가장 많이 쓰인다고 합니다.

    구체적으로 알아두면 공부하는 데에 도움이 될 것 같습니다.

     

    댓글

Designed by Tistory.