Google AdSense (text)

hidden logo stop

Moving

거지 같은 이글루스 광고노출 정책이 싫어서,
새 보금자리(http://blog.leocat.kr/)로 이사감.

[Oracle, MySQL] LPAD, RPAD 함수 Computer & Program

LPAD라는 SQL 문자열 함수를 보게 되었다. 무슨 뜻인지 몰라 찾아보니.. left padding의 약자인가보다. 글씨의 왼쪽에 원하는 길이만큼 숫자를 채워준다. () 길게 말하는 것 보다 한 번 보면 아하~~ 할 것이다.

- Oracle
SELECT LPAD('hello', 8, '#') FROM DUAL;
-> ###hello
SELECT LPAD('hello', 4, '#') FROM DUAL;
-> hell
SELECT LPAD('hello', 10, '$#@') FROM DUAL;
-> $#@$#hello
SELECT LPAD('hello', 10) FROM DUAL; -- 마지막 전달인자가 없으면 공백이 들어감
->      hello

- MySQL
SELECT LPAD('hello', 8, '#');
-> ###hello
SELECT LPAD('hello', 4, '#');
-> hell
SELECT LPAD('hello', 10, '$#@');
-> $#@$#hello
-- MySQL의 경우는 마지막 전달인자가 없는 LPAD 함수가 없다.


역시 비슷하게 right padding도 있다. RPAD.. 사용법은 LPAD와 동일..
- Oracle
SELECT RPAD('hello', 8, '#') FROM DUAL;
-> hello###
SELECT RPAD('hello', 4, '#') FROM DUAL;
-> hell
SELECT RPAD('hello', 10, '$#@') FROM DUAL;
-> hello$#@$#
SELECT RPAD('hello', 10) FROM DUAL; -- 마지막 전달인자가 없으면 공백이 들어감
-> hello     

- MySQL
SELECT RPAD('hello', 8, '#');
-> hello###
SELECT RPAD('hello', 4, '#');
-> hell
SELECT RPAD('hello', 10, '$#@');
-> hello$#@$#
-- MySQL의 경우는 마지막 전달인자가 없는 RPAD 함수가 없다.


가장 많이 쓰는 경우는 들여쓰기를 위해 공백을 왼쪽에 붙이거나 자릿수를 맞추기 위해 공백 또는 숫자 0을 넣는 경우가 많지 않을까 생각해 본다. 11, 101, 1001처럼 들어 있는 숫차를 0011, 0101, 1001과 같이 꺼낼 때 LPAD를 사용하면 유용하겠다.

+ 내가 가진 DBMS는 Oracle과 MySQL뿐이라 둘만 테스트.. 이 함수들이 표준인지는 모르겠다. =ㅅ=;;;
+ 갑자기 DB는 기초 수준의 query문밖에 쓰지 못 한다는걸 느꼈다. 아아~~ 공부할거 많네..
+ Oracle 10g에서 추가된 CONNECTED BY라는 재밌는 구문을 봤다. 이건 시간 나면 나중에 다시 포슷힝해야징 ㅋㅋ

덧글

  • 앙되요 2010/06/17 11:34 # 삭제 답글

    좋은 정보! 출처남기고 퍼가겠습니다
  • Sigel 2010/06/17 13:20 #

    감사합니다. 도움이 되셨으면 좋겠네요 :)
  • 퍼가요 2010/11/23 17:00 # 삭제 답글

    좋은정보 감사합니다~ 퍼갈게요 ^^
  • Sigel 2010/11/24 13:00 #

    좋은데 쓰세요~~
    세계 평화?? -ㅅ-;;
  • spanthoma 2011/04/11 14:34 # 삭제 답글

    이따위껄 찾는데. 니 블로그를 보게 될줄야.. 쩝..
  • Sigel 2011/04/11 14:54 #

    후훗.. 저도 검색하다 제꺼 검색돼서 놀라는 경우가 종종 있지요..
    왜 난 내가 쓴 글도 기억 못 할까 =ㅅ=;;
  • spanthoma 2011/04/11 14:36 # 삭제 답글

    참치는 언제 쏘냐..
  • Sigel 2011/04/11 14:54 #

    언제 오는데요?? ㅋㅋ 언제나 기다리고 있습죠 ㅋㅋ
  • lumiere 2012/09/20 16:56 # 삭제 답글

    저도 퍼 갑니다. 출처 남깁니다.
  • Sigel 2012/09/21 09:31 #

    감사합니다.
  • 2016/04/05 17:05 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
  • 2016/04/05 17:05 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
  • 2016/04/05 17:05 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
  • 2016/04/05 17:05 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
  • 2016/04/05 17:05 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
  • 2016/04/05 17:06 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
  • 막1 2016/04/05 17:06 # 삭제 답글

    출처없이 그냥 막 퍼갑니다
댓글 입력 영역

Google AdSense (text/image)