06. januar 2010 - 01:07Der er
3 kommentarer og 1 løsning
Tælle alle rows i flere tables i en database
Hej,
Jeg har fx en database med 55 tables, og hver table indeholder forskellige antal rows. Hvordan skrives kommandoen hvis antallet af rows i de 54 tables (dvs. én skal ikke med) skal tælles sammen? Databasen udbygges løbende med flere tables (og rows), så jeg vil meget gerne undgår manuelt at tilføje hver enkelt tablenavn i queryen.
Du opbygger queryen dynamisk udfra de forefundne tabeller. Det kan nemt gøres i PHP, Java, C# eller hvus du nu programmerer i.
Jeg er iøvrigt meget skeptisk overfor et database design hvor der hele tiden tilføjes nye tabeller. Det er normalt altid bedre at have en tabel og så et felt der angiver det som før var angivet ved valg af tabel.
Jeg er som arne_v også rimelig skeptisk, hvad angår dit databasedesign. Det kan garanteret gøres mere praktisk. Trods vi sikkert kan komme frem til en løsning på dit problem, så ville det måske være smartere at få en bedre struktur. Måske du kunne forklare lidt om, hvordan din database er opbygget?
Outputtet derfra kan du så løbe igennem og danne en masse SELECT COUNT(*) AS antal FROM [tabelnavn]. Gennemløbet kan enten gøres i PHP/ASP/C#/[indsæt programmeringssprog] eller i en STORED PROCEDURE i MySQL.
arne_v & wanze: I har ret, det er sikkert ikke den optimale løsning. Jeg har desværre ikke tid til at gøre mere ud af databasestrukturen i øjeblikket, men tak for tilbuddet om yderligere hjælp.
pi-hus: Du får point, da det løste mit problem umiddelbart.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.