MariaDB / MySQL 2개의 테이블 결합
테이블 tnHeaders와 tnData가 2개 있습니다.
tn헤더
fnIDX | 설명 |
---|---|
1 | h1 |
2 | h2 |
3 | h3 |
tn데이터
fnIDX | fnHEADER_IDX | 설명 |
---|---|---|
1 | 1 | d1 |
2 | 1 | d2 |
3 | 1 | d3 |
4 | 2 | d4 |
5 | 2 | d5 |
6 | 2 | d6 |
7 | 3 | d7 |
8 | 3 | d8 |
9 | 3 | d9 |
그리고 이 결과물을 생산하고 싶다.
출력 |
---|
h1 |
d1 |
d2 |
d3 |
h2 |
d4 |
d5 |
d6 |
h3 |
d7 |
d8 |
d9 |
코드에서는 문제없이 할 수 있지만 SQL에서는 어떻게 할 수 있습니까? (서버를 동작시킵니다)
를 사용해야 합니다.UNION ALL
두 테이블의 설명을 참조하고 헤더가 데이터 위에 오도록 결과를 정렬합니다.
SELECT fnOUTPUT
FROM (
SELECT fnDESCRIPTION fnOUTPUT, fnIDX header_index, 1 is_header FROM tnHeaders
UNION ALL
SELECT fnDESCRIPTION, fnHEADER_IDX, 0 FROM tnData
) t
ORDER BY header_index, is_header DESC, fnOUTPUT;
데모를 참조해 주세요.
언급URL : https://stackoverflow.com/questions/70481283/mariadb-mysql-combine-two-tables
'programing' 카테고리의 다른 글
mysql 포트를 표시하는 방법 (0) | 2022.10.29 |
---|---|
번들러에는 .min 파일이 포함되지 않습니다. (0) | 2022.10.29 |
왜 Java 어레이인가?정렬 방법은 두 가지 다른 유형의 정렬 알고리즘을 사용합니까? (0) | 2022.10.29 |
ReCaptcha 2.0: 탈환에 성공한 경우 콜백 시 Submit 버튼을 활성화합니다. (0) | 2022.10.29 |
열기 사용 시 모듈 cv2를 찾을 수 없음이력서 (0) | 2022.10.29 |