Behöver hjälp med lite mer invecklad SQL-stats (MySQL)
Hej,
jag skulle behöva lite hjälp med in invecklad SQL-stats. har två olika tabeller. Customer + Followers -- GER MIG ANTAL FÖLJARE SELECT COUNT(*) AS following FROM Followers WHERE accountNo = '907286609046' GROUP BY accountNo -- GER MIG CUSTOMER SELECT * FROM Customer c INNER JOIN OptInChannels o ON c.accountNo=o.accountNo WHERE c.accountNo = '907286609046' Det är i den senare satsen jag även skulle vilja få med antalet following som en egen kolumn |
Never mind... efter lite experimenterande så lyckade jag fixa till det...
SELECT * FROM Customer c INNER JOIN OptInChannels o ON c.accountNo=o.accountNo INNER JOIN (SELECT COUNT(*) AS following FROM Followers WHERE accountNo = '907286609046' GROUP BY accountNo) f WHERE c.accountNo = '907286609046' |
men har fortf lite problem, denna stats fungerar endast om "SELECT COUNT(*) AS following FROM Followers WHERE accountNo = '907286609046' GROUP BY accountNo" retunerar något. Är det tom så fungerar inte satsen. Då vill jag att following visas som 0....
någon? |
Ta bort grupperingen. Den borde ej behövas i den query'n?
|
Om customers endast kommer returnera en rad så bör ju denna fungera:
Kod:
SELECT c.*, (SELECT COUNT(*) FROM Followers AS f WHERE f.accountNo = c.accountNo) AS followers FROM Customer c INNER JOIN OptInChannels o ON c.accountNo=o.accountNo WHERE c.accountNo = '907286609046' |
Alla tider är GMT +2. Klockan är nu 17:28. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson