Rootbob91
Aktiver Benutzer
- Beiträge
- 27
Huhu, ich bin gerade auf ein altes Projekt gestoßen und versuche die Abfragen n bissl zu verbessern.
Habe hier Folgende:
Den datastring brauche ich für ne API.
Jetzt versuche ich das ganze auf PDO zu upgraden & zusätzlich zu verbessern. Es gab doch so sum() Befehl, kann man den nicht hier verwenden, um diese Subquery zu überspringen?
Natürlich erstmal ne neue PDO Instanz erstellen:
Dann die Query vorbereiten:
Hab hier aber Schwierigkeiten das unter einem Hut zu kriegen, mag vlt. daran liegen das ich gerade nicht ganz bei der Sache bin, gestrige Nacht war ein bisschen schlaflos ..
Also zusammengefasst, soll das Script auslesen welche Firma (Kunde) wie viele Aufträge bei uns hat und dies wie folgt ins reihen-Array packen:
['Firma', AnzahlAufträge]
Habe hier Folgende:
PHP:
$qry = mysql_query("SELECT id,firma FROM kunden");
$reihen = array();
while ($kd = mysql_fetch_array($qry)) {
$subqry = mysql_query("SELECT COUNT(*) FROM auftraege WHERE kundennr=$kd[0]");
$reihen[] = "['" . $kd[1] . "'," . mysql_result($subqry, 0) . "]";
}
$datastring = implode(",", $reihen);
Jetzt versuche ich das ganze auf PDO zu upgraden & zusätzlich zu verbessern. Es gab doch so sum() Befehl, kann man den nicht hier verwenden, um diese Subquery zu überspringen?
Natürlich erstmal ne neue PDO Instanz erstellen:
PHP:
$db = new PDO('mysql:host=derHost;dbname=dieDB;charset=utf8', 'derBenutzer', 'dasPW');
Dann die Query vorbereiten:
PHP:
$sq = $db->prepare("SELECT COUNT(*) FROM auftraege WHERE kundennr=?");
if ($sq->execute(array($kdid))) {
$oAU = $sq->fetch(PDO::FETCH_OBJ);
}
Hab hier aber Schwierigkeiten das unter einem Hut zu kriegen, mag vlt. daran liegen das ich gerade nicht ganz bei der Sache bin, gestrige Nacht war ein bisschen schlaflos ..
Also zusammengefasst, soll das Script auslesen welche Firma (Kunde) wie viele Aufträge bei uns hat und dies wie folgt ins reihen-Array packen:
['Firma', AnzahlAufträge]