ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • MySQL - select 구문 사용 예시
    프로그래밍/DB 2014. 11. 2. 18:36
    반응형

     

    MySQL - select 구문 사용 예시

     

    자주 사용하는 select 구문을 정리해 보았다.

     

     전체 필드 선택

     

    예시 ) 특정 테이블의 전체 필드들을 가져온다.

     

    SELECT * from `tablename`

     

     

    - 가져올 필드를 지정 

       테이블 이름과 필드 이름은 `로 감싼다. 필드 이름들은 , 로 나열한다.

     

    예시 )  field1, field2 만 선택

     

    SELECT `field1` , `field2`
    FROM `tablename`

     

     

     

    - 가져올 조건을 지정 , 필드의 값은 '로 감싼다

     

    예시 ) 한개의 필드 값 지정, = 은 exact matching으로 필드 값이 정확히 value와 같아야 데이터를 가져온다.

    SELECT * from `tablename`  WHERE `field`='value'

     

    예시 ) 한개의 필드 값 지정, LIKE는 부분 일치 조건으로 %위치에는 빈 값도 포함하여 아무 값이나 올수 있다. 정규식의 *와 같다. 

    - 회사 이름이 우선주로 끝나는 데이터들 가져오기  

    SELECT * FROM tablename WHERE `회사이름` LIKE '%우선주'

     

    - 회사 이름이 우선주로 시작하는 데이터들 가져오기  

    SELECT * FROM tablename WHERE `회사이름` LIKE '우선주%'

     

    - 회사 이름에 우선주가 들어가는 데이터들 가져오기  

    SELECT * FROM tablename WHERE `회사이름` LIKE '%우선주%'

     

     

    예시 ) 두개의 필드 값을 AND로 지정

    - 특정 날짜의 종목코드에 대한 정보를 테이블에서 가져오기

    SELECT * from `tablename` WHERE 날짜='2014-06-11' AND 종목코드='A068400'

     

    예시 ) 조건 필드 값을 AND와 OR로 지정, 같이 처리되어야 하는 조건을 ( )로 묶는다.

    코스피와 코스닥에서 우선주 종목들의 정보를 한번에 가져오기 위해 아래와 같은 조건을 사용하였다.

    SELECT * FROM tablename WHERE `회사이름` LIKE '%우선주%' AND ( `market` = '유가증권시장상장' OR `market` = '코스닥시장상장' ) ;


    예시) 기간을 지정

    SELECT * FROM tablename where Date >= '2011/02/25' and Date <= '2011/02/27'

     

     

    - 가져온 데이터를 정렬한다

     

     예시 ) 가져온 필드들을 최신 날짜 순으로 정렬

     

    SELECT `field1` , `field2`
    FROM `tablename`
    WHERE `field` = 'value'
    ORDER BY `날짜` DESC

     

    예시 ) 가져온 필드들을 오래된 날짜 순으로 정렬

    SELECT DISTINCT `날짜`
    FROM tablename
    ORDER BY `날짜` ASC

     

    예시 ) 가져온 필드들을 최신 날짜 순으로 정렬해서 특정 개수만큼 가져오도록 지정

    LIMIT num1, num2 : 행 num1부터 num2개수 만큼 가져오기.

    아래 예시는 가장 최근 날짜 데이터부터 30개만 가져오도록 지정

     

    SELECT `field1` , `field2`
    FROM `tablename`
    WHERE `field1` = 'value'
    ORDER BY `날짜` DESC
    LIMIT 0 , 30

     

     

     

    - 특정 필드에서 unique 값만 가져온다

     

    예시 ) market 필드에서 유일한 값들만 가져온다.

    SELECT DISTINCT `market` FROM tablename;

     

     

     

     

     

     

    728x90
    반응형
Designed by Tistory.