我的查詢基本上是這樣的:加入對選定的列
SELECT a,
(SELECT name
FROM table3
LIMIT 1) as b
FROM table1
GROUP BY b
不過,我得到一個錯誤說「未知列‘B’組聲明」。
那麼,我該如何正確地爲這個子選擇的列指定一個別名呢?
編輯:我實際上想要做的是更復雜一點。我有產品分配到子類別。一種產品可能有多個子類別。每個子類別都被分配到一個主類別,並且一個產品可能只有一個子類別在一個主類別中。然後,我有一個專門爲產品分配價格的專欄。現在,當我想要查看在某個主類別中花了多少錢時,我會按照主類別加入表格並對它們進行分組,然後使用SUM(價格)。但是,如果一個產品有多個子類別,則會多次計數。這裏的查詢是我迄今發現的唯一方法,省略了這個問題。
什麼是你真正想幹什麼?目前這似乎是[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。 –
您不需要別名後面的列,只需使用「GROUP BY名稱」而不是「GROUP BY b」。即使那樣你的整體查詢也是不正確的,因爲你的GROUP BY列表和SELECT列表會有所不同。 –
下面的答案解決了我的問題。非常感謝你的努力,Aziz! – eevaa