> 데이터 베이스 > MySQL 튜토리얼 > Oracle의 `CONNECT BY` 또는 유사한 기능 없이 MySQL에서 JOIN에 대한 행을 생성하려면 어떻게 해야 합니까?

Oracle의 `CONNECT BY` 또는 유사한 기능 없이 MySQL에서 JOIN에 대한 행을 생성하려면 어떻게 해야 합니까?

Linda Hamilton
풀어 주다: 2025-01-15 10:02:43
원래의
142명이 탐색했습니다.

How Can I Generate Rows for JOINs in MySQL Without Oracle's `CONNECT BY` or Similar Functions?

MySQL JOIN: Oracle을 사용하지 않는 행 생성 CONNECT BY

조인에서 행 집합을 생성하는 Oracle의 편리한 CONNECT BY LEVEL 절과 달리 MySQL에는 직접적인 상응하는 절이 부족합니다. Oracle의 접근 방식은 조인 시퀀스 생성을 단순화합니다.

<code class="language-sql">SELECT *
FROM dual
CONNECT BY LEVEL < p></code>
로그인 후 복사

마찬가지로 MS SQL Server는 재귀를 사용합니다.

<code class="language-sql">WITH hier(row) AS (
    SELECT 1
    UNION ALL
    SELECT row + 1
    FROM hier
    WHERE row < p></code>
로그인 후 복사

PostgreSQL은 generate_series:

을 제공합니다.
<code class="language-sql">SELECT *
FROM generate_series(1, n)</code>
로그인 후 복사

그러나 MySQL에는 JOIN 작업에 필요한 행을 생성하기 위한 대체 전략이 필요합니다. 여기에는 내장된 행 생성기가 없기 때문에 해결 방법이나 외부 도구가 필요한 경우가 많습니다.

위 내용은 Oracle의 `CONNECT BY` 또는 유사한 기능 없이 MySQL에서 JOIN에 대한 행을 생성하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿