Mehrer Tabellen auszählen und adieren

solomat

Erfahrenes Mitglied
Hallo,

wollte wissen wie das richtig geschrieben wird. Habe hier meinen Code um die Einträge einer einzelnen Tabelle auszuzählen und möchte den aber so verändern das ich mehrer Tabellen auszählen kann die alle adiere.
PHP:
		  <?php
		  	include("auto_verkehr/sqlfile.php");
		  	$query = mysql_query('SELECT COUNT(`id`) FROM `autoverkehr`');
		  	$anzahl = mysql_fetch_array($query);
		  	echo $anzahl[0];
		  ?>

ich habe mir jetzt gedacht, einfach alle anderen Tabellen die ich auszählen will mit hinzuschreiben. Ungefähr so:
PHP:
		  		  <?php
		  	include("auto_verkehr/sqlfile.php");
		  	$query = mysql_query('SELECT COUNT(`id`) FROM `autoverkehr`,`auto`,`und so weiter`');
		  	$anzahl = mysql_fetch_array($query);
		  	echo $anzahl[0];
		  ?>
 
Probier mal folgende Abfrage:
Code:
SELECT
        COUNT(*)
  FROM
        `tabelle_1`,
        `tabelle_2`,
        `tabelle_n`
 
Nun bekomm ich eine Null angezeigt.

PHP:
<?php
		  	include("auto_verkehr/sqlfile.php");
		  	$query = mysql_query('SELECT COUNT(*) FROM `autoverkehr`,`auto`,`cartuning`,`motorrad`,`werbungampkw`,`zubehoer`');
		  	$anzahl = mysql_fetch_array($query);
		  	echo $anzahl[0];
		  ?>
 
Ich denke, dass kannst Du auch so lösen:

PHP:
$query = mysql_query("SELECT a.spalte1, b.spalte2, c.spalte3 FROM table_1 AS a, table_2 AS b, tabelle_3 AS c");
  $nums = mysql_num_rows($query);
 echo "Anzahl der Einträge: ".$nums;

Du kannst allerdings KEINEN * als SELECT nehmen, sondern musst mindestens eine (1) Spalte pro Tabelle direkt ansprechen. Hab das jetzt einfach mal trocken geschrieben - wenn es klappt, dann sag mal bescheid. :)

kibOo
 
Das hat leider nicht geklappt, habe es jetzt so gemacht. Zwar viel zu schreiben, aber vom Sinn her kommt das gleiche raus. Vieleicht hat jemand eine einfache Lösung parat die schon ausprobiert wurde.

PHP:
$query = mysql_query("SELECT id FROM autoverkehr");
$anzahlautoverkehr = mysql_num_rows($query);

$query = mysql_query("SELECT id FROM auto");
$anzahlauto = mysql_num_rows($query);

$gesamtautoverkehr = $anzahlautoverkehr + $anzahlauto;

echo $gesamtautoverkehr;
 
Zurück