Det du får är antalet rader i kryssprodukten av alla tabeller.
select count(*), 'Screenshots' from tblScreenshots union all
select count(*), 'Members from tblMembers union all
select count(*), 'Links' from tblLinks
4 svar · 240 visningar · startad av jonne
Vad jag trodde skulle vara en enkel count har visat sig vara lite knivigare.
SELECT COUNT(Scr.scrID) AS Screenshots, COUNT(Mem.memID) AS Members, COUNT(Lkn.linkID) AS Links
FROM tblScreenshots AS Scr, tblMembers AS Mem, tblLinks AS Lkn
ger
+-------------+---------+-------+
| Screenshots | Members | Links |
+-------------+---------+-------+
| 8640 | 8640 | 8640 |
+-------------+---------+-------+
men de siffrorna är helt uppåt väggarna fel. Är mer i stil med 15, 32,19.
Det enda jag vill göra är att räkna hur många poster varje tabell innehåller i en och samma SQL sats. Vad gör jag för fel?
Det du får är antalet rader i kryssprodukten av alla tabeller.
select count(*), 'Screenshots' from tblScreenshots union all
select count(*), 'Members from tblMembers union all
select count(*), 'Links' from tblLinks
Möjligt att min hjärna går på lågvarv nu, men den klagar på union delen i det du skrev LarsG.
Ok, union finns inte i alla versioner av Mysql. Det kom först i version 4 någonting.
Då ser jag inget alternativ än att ställa tre frågor. Det borde inte vara någon speciellt märkbar prestandaförlust
Ok kör 3.23.47 på servern. Får köra med flera frågor då. Tackar för visat intresse :)