SQL-Abfrage: COUNT als bloßen Integer bekommen?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Du könntest statt fetch() die Methode fetchColumn() benutzen.


korbi27 
Fragesteller
 23.11.2019, 21:46

Oha das funzt ja wirklich, vielen Dank!

0

richtig wäre aber

$stmt->execute([':foo' => $foo])

wird etwas nicht erkkannt wird das array via reihenfolge der items ersetzt und nicht mehr bei namen . sollte eigentlich ab php 7. verwirklicht werden.

dann bekommst du natürlich eine antwort die den feldnamen und den wert hast .

deswegen ist select (.... COUNT(*) AS Zahl

und dann fetch mit Assoziativ "Zahl" oder

via anzahl werte

      $row = $stmt->fetch(PDO::FETCH_NUM);
      if ($stmt->columnCount() > 0 ) {
         $aValue = $row[0] ;
      }
      return $aValue ;

du bekommst in jedem fall ein array und wenn das nur 1 item hat.