홈>
아래에 나열된 검색어 결과를 완전히 이해하지 못했습니다 :
CREATE TABLE #tmpAccountsTable (ID INT PRIMARY KEY, AccountID INT,
AccountName varchar(20), CompanyID int, CompanyName varchar(50))
INSERT INTO #tmpAccountsTable (ID, AccountID, AccountName, CompanyID, CompanyName)
SELECT 1 AS ID, 1 AS AccountID, 'ABC Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 2 AS ID, 1 AS AccountID, 'ABC Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 3 AS ID, 2 AS AccountID, 'DEF Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 4 AS ID, 3 AS AccountID, 'GHI Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 5 AS ID, 4 AS AccountID, 'JKL Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 6 AS ID, 1 AS AccountID, 'ABC Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 7 AS ID, 1 AS AccountID, 'ABC Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 8 AS ID, 1 AS AccountID, 'ABC Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName UNION
SELECT 9 AS ID, 2 AS AccountID, 'DEF Account' AS AccountName, 1 AS CompanyID, 'Stark Enterprise' AS CompanyName
SELECT DENSE_RANK() OVER (PARTITION BY AccountID ORDER BY CompanyName) as AccountRANK, * FROM #tmpAccountsTable
DROP TABLE #tmpAccountsTable
위를 실행하면 다음과 같은 결과 집합이 나타납니다.
SELECT DENSE_RANK() OVER (PARTITION BY AccountID ORDER BY CompanyName) as AccountRANK, * FROM #tmpAccountsTable
에 대한 나의 이해에서
, 동일한 모든 AccountId에 대해 파티션을 작성해야하며 동일한
DENSE_RANK()
를 수신해야합니다.
그러나 가치가 있지만 이것은 사실이 아닙니다.
내가 무엇을 놓치고 있습니까?
-
답변 # 1
관련 자료
- Oracle SQL - oracle sql - 가입 및 보유
- sql server - MS SQL에서 ID 및 시간 간격으로 그룹화
- mysql - SQL CASE WHEN 및 @x 변수 사용법
- mysql - SQL 선택 및 가입
- mysql - SQL에서 분해 및 계산
- syntax - sql - and 및 or를 사용한 대소 문자 표현
- SQL 선택 및 교체
- ibm midrange - SQL Group By 및 Sum 지원
- sqlite - SQL 사례 및 분류
- 하이브와 SQL 테이블을 비교하는 방법
- ORACLE에서는 작동하지만 DB2에서는 작동하지 않는 SQL
- IN FROM 액세스 SQL과 조인
- DB2 용 SQL에서 날짜 및 시간 비교
- sql - 때와 파티션에 의해 사용
- SQL Lag 및 LEAD 쿼리
- ms access - sql - 다중 그룹화 및 '빈'으로 정렬
- mariadb - SQL 및 다중 조인 또는 병합 작업 방법
- SQL에서 MDX로 변환 (SUM 및 사례)
- SQL_ 그룹화 및 계산 방법
- sqlite - HAVING AND WHERE SQL
관련 질문
- sql - 특정 접두사가있는 테이블에서 데이터를 가져 오는 방법은 무엇입니까?
- sql - 동일한 임시 테이블 값 비교
- sql - mssql 서버 - 키워드 'else'근처의 잘못된 구문
- sql server - 누군가 SQL 에서이 조인 구문으로 나를 도울 수 있습니까? 서로 뒤에 두 개의 JOINS가 있습니다
- sql - Case 표현식은 "날짜 데이터 유형을 datetime 데이터 유형으로 변환하여 범위를 벗어난 값을 생성"합니다
- sql - 하위 쿼리와 조인 성능
- sql - 밀리 초없이 varchar를 datetime으로 변환
- sql server - SQL에서 DATETIME을 varchar로 변환
- sql server - SQL 업데이트 INNER JOIN의 키워드 'INNER'근처에 잘못된 구문이 있습니다
- 열 변경으로 SQL Server에서 순위 지정
각
AccountId
에 대해 별도의 값을 원할 경우 그러면ORDER BY
의 일부 여야합니다.PARTITION BY
가 아닌 :와이즈 비즈 카운터를 재설정하는 데 사용되므로 각
PARTITION BY
1부터 시작합니다. 그러면AccountId
주문했다. 모두 같은 값을 가지므로 결과는CompanyNames
입니다. .1