FAQ |
Kalender |
2019-02-16, 19:37 | #1 | ||
|
|||
Mycket flitig postare
|
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 |
||
Svara med citat |
2019-02-16, 19:41 | #2 | ||
|
|||
Mycket flitig postare
|
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' |
||
Svara med citat |
2019-02-16, 19:52 | #3 | ||
|
|||
Mycket flitig postare
|
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? |
||
Svara med citat |
2019-02-18, 12:38 | #4 | ||
|
|||
Nykomling
|
Ta bort grupperingen. Den borde ej behövas i den query'n?
|
||
Svara med citat |
2019-02-18, 14:08 | #5 | ||
|
|||
Nykomling
|
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' |
||
Svara med citat |
Svara |
|
|