Zwei Werte addieren


CreativPur

Erfahrenes Mitglied
Hi,
ich habe ich der Datenbank zwei Tabellen, wo ich die Anzahl der Einträge zusammen Addieren möchte.

Einzeln ist alles ok..
PHP:
$statement = $pdo->prepare("SELECT COUNT(*) AS anzahl1 FROM users");
                $statement->execute(); 
                $row = $statement->fetch();
                echo $row['anzahl1']

$statement = $pdo->prepare("SELECT COUNT(*) AS anzahl2 FROM geloeschte_bewerber");
                $statement->execute(); 
                $row = $statement->fetch();
                echo $row['anzahl2']
Wie kann ich $row['anzahl1'] und $row['anzahl2'] zusammen zählen ?
 

Bratkartoffel

gebratene Kartoffel
Premium-User
Hi,

etwas naiv:
SQL:
SELECT a + b FROM
  (SELECT count(1) as a FROM users) as a,
  (SELECT count(1) as b FROM geloeschte_bewerber) as b;
Alternativ:
SQL:
SELECT SUM(c) FROM (
  SELECT COUNT(1) AS c FROM users
  UNION
  SELECT COUNT(1) AS c FROM geloeschte_bewerber
) AS x
Oder mit mysql 8 (ungetestet):
SQL:
WITH
  a AS (SELECT COUNT(1) AS c FROM users),
  b AS (SELECT COUNT(1) AS c FROM geloeschte_bewerber)
SELECT a + b;
Grüsse,
BK
 
Zuletzt bearbeitet:

CreativPur

Erfahrenes Mitglied
Verstehe ich das jetzt richtig ?
In diesem Fall werden die Anzahl der Einträge zwar für jede Tabelle ausgegeben, aber nicht zusammengezählt..

Ich meinte, wenn in Tabelle "users" z.B. 12 Einträge sind, und in Tabelle "geloeschte_bewerber" z.B. 16 Einträge sind, möchte ich als echo 28 ausgegeben bekommen..

In Bratkartoffels Code, weiß ich nicht, was ich als ECHO ausgeben soll
 

Yaslaw

n/a
Moderator
Oder
SQL:
select count(c.id)
from (
  select id from a 
  union all select id from b
) c
oder
SQL:
select (select count(id) from a) + (select count(id) from b);
Oder in PHP
PHP:
//TODO: 1tes Statement aufmachen
$anzahl1 = $row['anzahl1'];
//TODO: 2tes Statement aufmachen
$anzahl2 = $row['anzahl2'];
$anzahl = $anzahl1 + $anzahl2;
 

CreativPur

Erfahrenes Mitglied
Danke..
Ich habe es jetzt folgend Gelöst..
PHP:
                <?php
                $statement = $pdo->prepare("SELECT COUNT(*) AS anzahl1 FROM users");
                $statement->execute();
                $row = $statement->fetch();
             
                $anzahl1 = $row['anzahl1'];
             
                $statement = $pdo->prepare("SELECT COUNT(*) AS anzahl2 FROM geloeschte_bewerber");
                $statement->execute();
                $row = $statement->fetch();
             
                $anzahl2 = $row['anzahl2'];

                $anzahl = $anzahl1 + $anzahl2;
                 echo $anzahl;
Vielen Dank nochmal und noch ein schönes WE