FAQ |
Kalender |
![]() |
#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 |
||
![]() |
![]() |
![]() |
#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' |
||
![]() |
![]() |
![]() |
#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? |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Nykomling
|
Ta bort grupperingen. Den borde ej behövas i den query'n?
|
||
![]() |
![]() |
![]() |
#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 |
|
|