[英]SQL - Passing column in subquery
我的命令:
Select sobe.Id, sobe.Naziv, sobe.Opis, sobe.Kat, (Select Group_CONCAT(studenti.Ime,studenti.Prezime) ImePrezime FROM studentsoba LEFT JOIN studenti ON studentsoba.Id_Sobe=sobe.Id AND studenti.JMBAG = studentsoba.JMBAG) AS ImePrezime from Sobe
這給了我這個錯誤:
1054 - 'on 子句'中的未知列'sobe.Id'
我知道問題出在哪里,但我不知道如何解決它。 我想在這個子查詢中傳遞sobe.Id
:
(Select Group_CONCAT(studenti.Ime,studenti.Prezime) ImePrezime FROM studentsoba LEFT JOIN studenti ON studentsoba.Id_Sobe=sobe.Id AND studenti.JMBAG = studentsoba.JMBAG)
我想查看那個房間里有哪些學生。 單詞 soba 意味着房間,JMBAG 就像每個學生的個人號碼
嘗試將其移至WHERE
子句:
Select s.Id, sobe.Naziv, s.Opis, s.Kat,
(Select Group_CONCAT(si.Ime, si.Prezime) as ImePrezime
from studentsoba ss LEFT JOIN
studenti si
on si.JMBAG = ss.JMBAG
where ss.Id_Sobe = s.Id
) AS ImePrezime
from Sobe s;
相關的子查詢應該沒問題。 我想相關子句不能on
子句中——我通常把它放在where
子句中。
另請注意,我引入了表別名,因此查詢更易於編寫和閱讀。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.