예제로 배우는 SQL 프로그래밍
HOME
SQL기초
활용 및 팁
ADO.NET
LINQ
SMO
SQL WMI
SQL 활용 및 팁
특정프로그램 접속 금지
특정IP로부터 접근 허용
데이타베이스 삭제
IDENTITY 컬럼 활용
파워쉘 TCP포트 변경
SET NOEXEC 활용
TSQL 파일 체크섬 산출
편리한 MERGE문 활용
데드락 분석의 기초 (1)
단순한 데드락 사례 (2)
실전 데드락 사례 (3)
테이블 변수의 활용
백업/복원 진척 확인
Recursive CTE 사용
최대값 산출 SELECT
WHERE-조건별 다른쿼리
레코드에 일련번호 붙이기
SQL 2012 시퀀스 사용법
ROW 데이타 하나로 결합
ROW 데이타를 CSV로 결합
대량 레코드 분할 실행
OBJECT_ID() 함수 활용
MAX 없이 최대값 산출 SELECT 문
간단한 정수 컬럼으로부터 MAX와 같은 집계용 함수를 사용하지 않고, 최대값을 출력하려면 어떤 방식으로 할 수 있을까? 우선 간단하게는 해당 컬럼을 내림차순으로 소트하여 첫번째 ROW를 리턴하면 될 것이다. 또한 아래 3번째 예제에서 보이듯이 같은 테이블을 두번 조인하여 적은 값들의 집합을 구하고 이 집합에 속하지 않은 한 개의 값, 즉 최대값을 산출할 수 있다. 최대값이 여러개 있는 경우 복수개의 ROW가 출력되므로 DISTINCT를 사용하여 이를 방지한다.
예제
-- MAX()를 사용한 경우 SELECT Max(Val) FROM Tab -- 소팅 SELECT TOP 1 Val FROM Tab Order By Val DESC -- MAX()를 사용하지 않고 최대값 구하기 SELECT DISTINCT Val FROM Tab WHERE Val NOT IN ( SELECT t1.Val FROM Tab t1, Tab t2 WHERE t1.Val < t2.Val )
본 웹사이트는 광고를 포함하고 있습니다. 광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.