오라클 sql select

    쿼리문 작성시

    • 대소문자 구분X

    • 여러 라인에 걸쳐서 작성이 가능하고 가독성을 위해 들여쓰기 하는 것을 추천

    • 키워드는 여러 행에 나누어 쓰거나 약어로 쓸 수 X

    • 여러 컬럼을 검색할 때 쉼표로 컬럼을 구분한다.

    • SELECT절에서 출력 결과에 표시할 순서대로 컬럼을 지정한다.
    • SELECT결과 열 머리글(Heading)은 기본적으로 대문자로 표시된다.

     

    기본 SELECT

    형식

    SELECT 컬럼1, 컬럼2, 컬럼3, …

    FROM 테이블명;

    SELECT one, two

    FROM EVERLAND;

     

    SELECT *

    FROM EVERLAND;

    별표(*)는 모든 컬럼을 조회하겠다는 뜻이다.

     

    컬럼은 대소문자 구분를 구분하지 않는다.

    SELECT ONE, two

    FROM EVERLAND;

     

    컬럼의 중복도 상관 없다.

    SELECT ONE, two, one

    FROM EVERLAND;

     

    컬럼을 이용한 연산이 가능하다(기존 테이블에는 영향이 없다. 단순히 값을 꺼내온 후 연산하여 보여줄 뿐이다)

    SELECT ENAME, 2*sal

    FROM emp;

     

    별칭 (별명)

    칼럼명이 길면 엄청 귀찮아 지는데 이를 별칭을 이용해 이름 변경 없이 간단하게 사용 할수있다.

    SELECT one o, two t

    FROM EVERLAND;

    주로 연산이 수행된 컬럼에 사용된다.

    컬럼명 다음에 AS를 쓴 뒤 그 뒤에 별칭으로 사용할 단어를 제시한다(AS는 생략 가능).

     

    - 대소문자를 구분하지 않는다. 단, 큰 따옴표(” ”)로 묶어주면 대소문자 구분이 가능하다.

    SELECT one "ONE", two "TWO"

    FROM EVERLAND;

     

    - 특수 문자나 공백을 컬럼의 별칭으로 사용하고자 하면 별칭에 큰 따옴표(" ")를 사용한다.(Sal7은 큰 따옴표가 필요 없으나 7Sal은 필요하다)

    SELECT one "ONE", two*7 "7TWO"

    FROM EVERLAND;

     

    주의!

    Where절에서는 별칭을 사용할 수 없다!!!! 왜냐하면 DB from절 다음에 select절이 아닌 where절을 바라보기 때문이다.

    SELECT one newone, two newtwo

    FROM EVERLAND

    WHERE newtwo > 100;

     

     별칭은 조회값들은 전부 가져온 후 붙여지는 것이지 하나하나씩 값이 가져온 후에 붙여지는 것이 아니다. 때문에 아래와 같은 쿼리는 정상적으로 작동하지 않는다.

    SELECT one newone, two newtwo, newtwo+1

    FROM EVERLAND

    WHERE newtwo > 100;

     

    리터럴

    특정 문자, 숫자, Date 타입 등의 상수를 출력하고 싶을 때 사용한다.

    Date 타입이나 문자열은 작은 따옴표('')로 둘러싸야 한다.

    SELECT 'one', 'two'

    FROM EVERLAND;

     

    각 문자열은 각 행(Row)가 반환될 때마다 한 번씩 출력된다.

    SELECT 1, two+1, 'two*2+1'

    FROM EVERLAND;

     

    DISTINCT 중복 행 제거

    같은 컬럼에 있는 동일한 값을 한번만 출력한다SELECT 바로 뒤에 사용한다.

    SELECT DISTINCT one

    FROM EVERLAND;

     

    DISTINCT 다음에 여러 열을 지정할 수 있다(선택한 모든 열에 영향을 주어 결과로 고유한 열 조합이 표시된다)

    SELECT DISTINCT one, two

    FROM EVERLAND;

    댓글

    Designed by JB FACTORY