Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- inner join
- 이미지세로길이
- array
- injection
- XML
- FileSystemObject
- SPLIT
- VARIABLE
- xmldom
- tempDB
- sql순위
- WML
- 한글입력체크
- VarType
- wap
- MSSQL보안
- ERD
- JavaScript
- update
- sql업데이트
- 정규식
- jdbc driver
- 이미지가로길이
- javascript 한글입력체크
- join
- 인젝션
- sql랭킹
- asp함수
- 자바기초
- instr
Archives
- Today
- Total
3초기억력
MS-SQL 랭킹(순위) 매기기 본문
Table명 : TEST_POINT_LIST, Column명:name, regdate
앙마 | 2008-10-11 |
철수 | 2008-10-11 |
영희 | 2008-10-12 |
철수 | 2008-10-13 |
진칠 | 2008-10-13 |
영희 | 2008-10-11 |
철수 | 2008-10-12 |
진칠 | 2008-10-13 |
예를 들자면...
댓글 많이 달기 이벤트를 진행했다고 치고.
아뒤(이름), 날짜가 기본으로 저장될테고, 댓글등은 위 테이블에서 무시함.
이럴 경우 누가 댓글을 많이 달았나? 등수를 매기는 쿼리문.
단, 같은 댓글 갯수는 동일 등수로, 그 하위 등수는 그 아래부터
select name,
(
select count(*)+1
from
(
select name, count(*) as p_cnt
from TEST_POINT_LIST
group by name
) p_rank
where p_rank.p_cnt > p2_rank.p_cnt
) rank
from
(
select name, count(*) as p_cnt
from TEST_POINT_LIST
group by name
) p2_rank
--where name='철수'
order by rank
name | rank |
철수 | 1 |
진칠 | 2 |
영희 | 2 |
앙마 | 4 |
where절만 나오도록(위 쿼리문에서 --을 빼면) | |
철수 | 4 |
이렇게 나옵니다. 여러가지 경우로 사용가능할 수도 있죠.
예를 들면,
미팅 : 나에게 프로포즈 많이 한 사람 순위
선물 : 나에게 선물 많이 준 사람 순위 등등
학원 : 결석한 사람 순위
'쿼리_MSSQL' 카테고리의 다른 글
MS-SQL SubString으로 할수있는 연령대별 회원분석 쿼리문 (0) | 2008.11.13 |
---|---|
ms-sql UPDATE 문을 제대로 써보자! (0) | 2008.11.13 |
ms-sql 2000 SQL인젝션방지용 쿼리문 (0) | 2008.11.13 |
Cursor 사용 예제 (0) | 2008.11.12 |
MS-SQL 2000 보안 쿼리문 (0) | 2008.11.12 |
Comments