表中有一個foundStatus列,它是一個char。我想回到foundStatuses列表與旁邊的每個計數 - 這個工程:按內部連接返回太多記錄
SELECT foundstatus, count(foundstatus) as total
FROM findings f
WHERE findDateTime BETWEEN '2008-01-01' AND '2017-06-24 23:59:59'
group by foundstatus
order by foundstatus
我需要加入一些表來建立一個where子句 - 而這樣做開始返回太多的列。我能得到這個工作:
SELECT foundstatus, count(foundstatus) as total
FROM findings f left join
pets p
on f.petid = p.petid
WHERE findDateTime BETWEEN '2008-01-01' AND '2017-06-24 23:59:59'
group by foundstatus
order by foundstatus
通過這樣做左連接,但是 - 任何後續加入我(左或內部)剛剛返回過多行(我猜是因爲返回連接表的多個記錄) :
SELECT foundstatus, count(foundstatus) as total
FROM findings f left join
pets p
on f.petid = p.petid inner join
petTags pt
ON p.petID = pt.petID
WHERE findDateTime BETWEEN '2008-01-01' AND '2017-06-24 23:59:59'
group by foundstatus
order by foundstatus
我需要一個像只有5個連接表底部的語句才能返回與前2個查詢相同的計數。我相信這很容易,但在Google上什麼也找不到 - 我該怎麼辦?謝謝。
人們在堆棧溢出中如何堆積如此多的點,而不知道如何格式化代碼? –
@GordonLinoff我真的很喜歡他的方式比你更多 - 我喜歡新行上的連接和與同一行上的連接相關的表名。所以一行有FROM <文件來自>或JOIN <表加入> – Hogan
我在這裏閱讀的最好的問題之一,總是很高興地讀你的答案教授。 @Gordon – Frank