웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
ASC(순차), DESC(역순) 정렬하기.
2005.03.03 23:18
데이터베이스에서는 쿼리문을 날려서 그 실행 결과를 정렬하는 방법을 씁니다.
예를 들어 날짜순으로 정렬할때 오래된것부터, 혹은 가장 최근 것부터 정렬할때 사용합니다.
오래된 것부터 하려면 ASC를 사용하고 최근것은 역순으로 해야 하기에 DESC를 사용합니다.
쿼리문을 예로 들어보겠습니다.
MEMBER라는 테이블에서 등록된 날짜(DATE)가 가장 최근것부터 전체를 불러옵니다.
SELECT * FROM `MEMBER` ORDER BY DATE DESC;
반대는
SELECT * FROM MEMBER ORDER BY DATE ASC; 가 되겠죠.
Mysql이나 Oracle이나 같습니다.
그리고 Oracle은 조금 다른 방법도 있더라구요.
SELECT /*+ INDEX_ASC(MEMBER MEMBER_PK) */ * FROM MEMBER;
SELECT /*+ INDEX_DESC(MEMBER MEMBER_PK) */ * FROM MEMBER;
날짜순으로 검색하는 건 아닌데 PK를 기준으로 ASC, DESC로 정렬합니다.
대략 400~500개의 레코드를 불러 보았는데 속도는 ORDER BY보다 빠른것을 확인했습니다.
팁이라면 팁이구요. 이미 알고 계시다하신다면 할말은 없네요...^^;;;
예를 들어 날짜순으로 정렬할때 오래된것부터, 혹은 가장 최근 것부터 정렬할때 사용합니다.
오래된 것부터 하려면 ASC를 사용하고 최근것은 역순으로 해야 하기에 DESC를 사용합니다.
쿼리문을 예로 들어보겠습니다.
MEMBER라는 테이블에서 등록된 날짜(DATE)가 가장 최근것부터 전체를 불러옵니다.
SELECT * FROM `MEMBER` ORDER BY DATE DESC;
반대는
SELECT * FROM MEMBER ORDER BY DATE ASC; 가 되겠죠.
Mysql이나 Oracle이나 같습니다.
그리고 Oracle은 조금 다른 방법도 있더라구요.
SELECT /*+ INDEX_ASC(MEMBER MEMBER_PK) */ * FROM MEMBER;
SELECT /*+ INDEX_DESC(MEMBER MEMBER_PK) */ * FROM MEMBER;
날짜순으로 검색하는 건 아닌데 PK를 기준으로 ASC, DESC로 정렬합니다.
대략 400~500개의 레코드를 불러 보았는데 속도는 ORDER BY보다 빠른것을 확인했습니다.
팁이라면 팁이구요. 이미 알고 계시다하신다면 할말은 없네요...^^;;;
댓글 4
-
지랄꼴깝
2005.03.13 14:45
학교종이 땡땡땡 어서모이자 -
Xian
2005.03.08 11:25
아.. 오라클 옵티마이저가 인덱스힌트를 사용하는 것이면 쿼리문을 order by로 주나, 인덱스힌트로 주나 같다는 말씀이시죠?
그리고 힌트는 되도록이면 자제하고, 꼭 필요한 경우가 아니면 쓰지 말라는 것이겠죠?
오라클은 이제 막 접해본것이라 모르는 것이 많은데....
말씀 감사합니다...^^; -
정보균
2005.03.05 23:44
간만에 제로보드 사이트와서 팁보고 가는데 잘못된 정보가 있어서
오라클 DBA로서 글을 남기고 갑니다.
--------------------------------------
그리고 Oracle은 조금 다른 방법도 있더라구요.
SELECT /*+ INDEX_ASC(MEMBER MEMBER_PK) */ * FROM MEMBER;
SELECT /*+ INDEX_DESC(MEMBER MEMBER_PK) */ * FROM MEMBER;
날짜순으로 검색하는 건 아닌데 PK를 기준으로 ASC, DESC로 정렬합니다.
대략 400~500개의 레코드를 불러 보았는데 속도는 ORDER BY보다 빠른것을 확인했습니다.
--------------------
인덱스 힌트를 이용하여 사용한것고 order by시 오라클 옵티마이저가 MEMBER MEMBER_PK
인덱스를 이용해서 실행계획을 힌트를 이용하는것과 같이 풀렸다면은 결과는 똑같습니다.
그리고 힌트 사용은 될수 있으면은 자제하는게 Cost Base Optimizer에게 좋습니다. -
꿀떡이당
2007.09.12 10:19
궁금한게 있어서 그러는데요 업로드할시에 내림차순 올림차순 그런것도 변경이 가능한가요?
제목 | 글쓴이 | 날짜 |
---|---|---|
나만의 미니홈 만들기 ㅡ 간단한 최근글 불러오기 [6] | 예뜨락 | 2005.05.09 |
나만의 미니홈 만들기 ㅡ password.php [8] | 예뜨락 | 2005.05.07 |
winamp 방송정보 읽어오기 심각한 문제해결 | 이승원 | 2005.05.04 |
[초보]아주쉬운 PHP로 그림에 글자 입히기 [11] | 김규백 | 2005.04.04 |
DB에서 각종 기념일을 내용,순서순으로 뽑아 정렬하기.. | 박순영 | 2005.03.17 |
ASC(순차), DESC(역순) 정렬하기. [4] | Xian | 2005.03.03 |
사용자 등록/DB생성/테이블 생성 [3] | QQQ | 2005.03.03 |
[날짜 구하는함수업]내일 날짜와 1년 후 년도 구하기 [8] | ssukai | 2005.02.24 |
자바스크립트 단축키 지정을 쉽게하자. [1] | 권태수 | 2005.02.14 |
내 컴퓨터가 표현할 수 있는 문자들. [6] | 최호성 | 2005.01.30 |
게시판 테이블 생성을 쉽게하자. [2] | QQQ | 2005.01.29 |
날짜 구하는 함수.. ... [3] | 김명현 | 2005.01.24 |
우리가 사랑한지 몇일째 날짜세주는 PHP 소스 [12] | 레드 | 2005.01.16 |
PHP 왕초보 입문기(총괄) [4] | 하나둘 | 2005.01.15 |
퍼미션을 보기좋게 구하자! [4] | 플로렐라 | 2005.01.03 |
나만의 미니홈 만들기 ㅡ delete.php 파일 [2] | 예뜨락 | 2005.01.03 |
"를 그냥 사용하기 [3] | 추천대화상대 | 2005.01.02 |
IE 에서도 투명 알파값이 적용된 PNG 이미지를 맘껏 활용하자! [8] | THE PAPER™ | 2004.12.27 |
4. 쿼리문 [6] | 티다 | 2004.12.11 |
'참조'에 관한 간단한 예제 | 플로렐라 | 2004.12.09 |