我有一個MySQL表稱爲活動像下面MySQL的 - 內連接到同一個表的WHERE子句
ID integer
Name text
isBalanced boolean
redirects tinyint
我想實現一個SELECT查詢,使我得到的所有行,其中isBalanced
是false PLUS只有在isBalanced
爲真的行的定義數量。我得到這個結果後,我需要得到最低數量redirects
的單個結果。
我知道有辦法做到這一點,但我很難找出如何。這是我得到了什麼,直到知道
SELECT campaigns.id, campaigns.name, campaigns.isBalanced, campaigns.redirects
FROM campaigns AS c
INNER JOIN campaigns_2 AS c2
WHERE c.isBalanced = 0
但是我不能夠從C2組只選擇其中的一些,然後重新組合所有的過濾器,以獲得單一個具有最低數量的redirects
。
任何幫助將不勝感激。
顯示一些示例數據和預期的結果。您不清楚您需要什麼。 –
你的「定義」行數是多少?這些ID是否在表格中?一些標準?另外,不要用「我想要這些行,然後我想從這些行中獲得這個行」來思考。 SQL是基於集合的,你需要教你自己思考這些術語,而不是按順序處理術語。 –
@TomH是和否,SQL也是一種順序。例如。當您從子查詢中進行選擇時,您可以將其視爲兩個步驟的過程。像IN或EXISTS(甚至是WHERE本身)也可以看作是一個連續的步驟。 – maraca