랭킹 관련 작업을 하다가 필요해서 찾은 기능으로 특정 테이블의 데이터를 SELECT 할때 원하는 정렬 값으로 순위를 매길 수 있는 기능

SQL2005에서 관련해 추가된 명령어와, 2005 이전버젼에서 사용할 수 있는 쿼리문이 함께 나와있습니다.

근데 보니까.... 양이 많은 데이터에서는 권장하지 않는다고... -_-

반응형

'저장고 > 기타' 카테고리의 다른 글

NSIS CreateShortcut 사용시 시작 위치(Start in) 정보 설정 방법  (1) 2011.09.01
[SQL] NULL + '문자열' = ?  (0) 2009.06.11
[MSSQL] CASE 함수  (0) 2008.05.19
얼마전 SP를 작업해서 협력사에 넘겼는데 정상 작동을 안한다고 해서 몇시간을 헤맨적이 있습니다. 결국 밝혀진 원인은 제목과 같은 NULL + '문자열' 의 결과였는데 이게 MS-SQL 버젼에 따라 결과가 좀 다르게 나오더군요...

두개의 테이블에서 문자열을 하나씩 검색해서 + 연산으로 문자열을 합치는 쿼리문이었는데 앞에 테이블에서 검색된 열 갯수가 0일 때 문제가 된 것이었습니다.

대충 아래 쿼리와 비슷한 쿼리문이었습니다.

제 작업 환경은 MS-SQL2000, 협력사의 테스트 환경은 MS-SQL2005 였는데 2000에서는 앞의 테이블 검색 결과가 없어도 뒤 테이블에서 검색된 데이터가 출력되는 반면에 2005에서는 앞의 테이블 검색수가 0이면 뒤 테이블 검색 결과에 상관없이 무조건 NULL 이더군요. 결국 ISNULL() 을 사용해서 해결은 했습니다.

근데 또 다른 비슷한 경우를 만들어서 테스트를 해보니 NULL 나오는게 정상인듯 싶네요. 앞으로 주의해야겠습니다;;;
반응형

'저장고 > 기타' 카테고리의 다른 글

[SQL] SELECT 할 때 동적으로 순위 매기기  (0) 2009.06.17
[MSSQL] CASE 함수  (0) 2008.05.19
NSIS 임의로 Page 이동하기  (3) 2007.01.19

+ Recent posts