一層子查詢可以正確得到結果,多層嵌套子查詢報錯。有沒有其他寫法,可以避免報錯
select (select id from a where user_id=b.id),b.* from b ;--這個能正常得到結果
select (select a.id from (select id from a where user_id=b.id) a),b.* from b;--這個會報Unknown column 'b.id' in 'where clause'
uj5u.com熱心網友回復:
可以把子查詢用join改寫uj5u.com熱心網友回復:
直接用join把,這樣比較容易使用不同表的列等uj5u.com熱心網友回復:
子查詢只能參考它外層查詢的欄位,也就是第3層只能參考第2層,不能參考第1層的,你的第2個子查詢顯然是試圖在第3層參考第1層uj5u.com熱心網友回復:
高級查詢 子查詢 ,相關子查詢http://www.verejava.com/?id=1717413210274
uj5u.com熱心網友回復:
sql寫法有問題。uj5u.com熱心網友回復:
select b.* from a, b where a.user_id = b.id;轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/85449.html
標籤:MySQL
上一篇:求大神幫忙寫一個求當日新增的和當榷訓躍的等資料的sql
下一篇:pgsql如何監控主從延遲情況
