Jo, genom att inte designa databasen på detta sätt.
select sum(c) from
(select count(*) c from t1
union all select count(*) from t2
...
union all select count(*) from t7) dt
4 svar · 265 visningar · startad av m_soderlund
Hur ser koden ut för att räkna ihop alla poster från, säg, 7 tabeller, vilkas namn är enligt följande: tbl1, tbl2, tbl3 etc?
Man skulle ju kunna exekvera 7 SQL-satser och räkna posterna i respektive tabell med Count och sedan lägga ihop allt, men det finns väl ett mer effektivt sätt?
Jo, genom att inte designa databasen på detta sätt.
select sum(c) from
(select count(*) c from t1
union all select count(*) from t2
...
union all select count(*) from t7) dt
Hur ska man designa databasen då? Och vad gör dt i slutet?
Man måste ange ett namn där. Det finns egentligen ingen anledning att man måste göra det jämnt men så är det definierat av ISO/ANSI.
Det jag ifrågasätter är varför du har sju tabeller och inte en då det tycks vara som om posterna ändå hör ihop.
Jag var bara nyfiken, jag har inte sju tabeller i en databas, inte ens en databas. Det är en högst fiktiv tabell jag frågar efter kod till i denna tråd. Tack!