>데이터 베이스 >MySQL 튜토리얼 >행 번호 및 컨트롤 순서를 기준으로 SQL Server 테이블을 조인하려면 어떻게 해야 합니까?

행 번호 및 컨트롤 순서를 기준으로 SQL Server 테이블을 조인하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-29 01:54:10610검색

How Can I Join SQL Server Tables Based on Row Number and Control Ordering?

SQL Server에서 행 번호로 테이블 조인

SQL Server 2008에서는 ROW_NUMBER( ) 기능. 이 함수는 선택적 정렬 사양에 따라 테이블의 각 행에 고유한 일련 번호를 할당합니다.

조인된 행의 수직 순서 쿼리:

테이블 A를 조인하려면 행 번호에 B 및 행의 수직 순서를 유지하려면 다음을 사용하십시오. 쿼리:

SELECT A.val, B.val
FROM (
    SELECT val, ROW_NUMBER() OVER (ORDER BY val) AS row_num
    FROM A
) AS A
JOIN (
    SELECT val, ROW_NUMBER() OVER (ORDER BY val) AS row_num
    FROM B
) AS B
ON A.row_num = B.row_num
ORDER BY A.val, B.val;

조인된 행을 가로로 정렬하는 쿼리:

행을 정렬하지 않고 가로로 조인하려면 ORDER BY 절을 PARTITION으로 바꾸세요. 에 의해 절:

SELECT A.val, B.val
FROM (
    SELECT val, ROW_NUMBER() OVER (PARTITION BY 1) AS row_num
    FROM A
) AS A
JOIN (
    SELECT val, ROW_NUMBER() OVER (PARTITION BY 1) AS row_num
    FROM B
) AS B
ON A.row_num = B.row_num;

예:

제공된 샘플 테이블 A와 B를 사용하면 첫 번째 쿼리에서 다음 출력이 생성됩니다.

RowA Row1
RowB Row2
RowC Row3
RowD Row4

두 번째 쿼리는 수평 조인을 나타내는 다음 출력을 생성합니다.

RowA Row4
RowB Row3
RowC Row2
RowD Row1

위 내용은 행 번호 및 컨트롤 순서를 기준으로 SQL Server 테이블을 조인하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.