簡體   English   中英

SQL查詢改進(表中的附加列)

[英]SQL query improvement (extra column in table)

我在SQL中有這個查詢,我知道它寫得很糟。 你們能幫我以體面,普通的方式寫出來嗎?

謝謝。

select distinct R.*, X.LIKED
from Recipe R
left join (select distinct R.* , '1' as LIKED 
           from Recipe R, Likes L 
           where R.id = L.idRecipe 
             and L.email = 'dvader@deathstar.galacticempire') X
on R.id = X.id

看起來您需要食譜中所有帶有vader@deathstar.galacticempire喜歡的標記的東西

select R.*, likedR.LIKED
from Recipe R
left join (select distinct R.id , '1' as LIKED 
           from Recipe R 
                inner join Likes L on R.id = L.idRecipe
           where  
                L.email = 'dvader@deathstar.galacticempire') likedR
on R.id = likedR.id

感謝大家的幫助。

我可以通過此查詢執行我想做的事情:

select distinct R.*, X.LIKED, U.imgUrl 
from  User U, Recipe R 
left join 
    (select distinct R.* , '1' as LIKED 
     from Recipe R, Likes L 
     where R.id = L.idRecipe and L.email = 'dvader@deathstar.ge') X 
on R.id = X.id 
where R.email = U.email

如果dvader的條目位於另一個表中,這將把我需要的所有信息加到一個表中,再加上1個額外的列(帶1或null),該表位於使用連接的另一個表中。

暫無
暫無

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

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