簡體   English   中英

SQL Select 關於1:M遞歸關系的聲明

[英]SQL Select Statement on 1:M Recursive Relationship

我有下表:

電影ID 電影名 父電影ID
1 行動 NULL
2 浪漫 NULL
3 喜劇 NULL
4 電影一 1
5 電影B 1
6 電影 C 2
7 電影 D 2
8 電影 E 2
9 電影 F 3
10 電影 G 3
11 電影 H 3

我一直在嘗試根據 ID 將電影名稱 output 與下表匹配,但我在使用 select 語句時遇到問題。

電影ID 電影名 父電影ID
1 行動 NULL
2 浪漫 NULL
3 喜劇 NULL
4 電影一 行動
5 電影B 行動
6 電影 C 浪漫
7 電影 D 浪漫
8 電影 E 浪漫
9 電影 F 喜劇
10 電影 G 喜劇
11 電影 H 喜劇

您可以使用left join

select m.*, m1.moviename genre from movies m 
left join (select m2.* from movies m2 where m2.parentmovieid is null) m1 
on m.parentmovieid = m1.movieid

典型的LEFT JOIN將提供您想要的信息:

select a.movieID, a.movieName, b.movieName
from movie a
left join movie b on b.MovieID = a.parentMovieID

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM