Hallo,
ich möchte Daten aus Tabelle A die den gleichen Wert haben zusammen zählen und dann in Tablle B schreiben. Das ganze soll als Cronjop ausgeführt werden.
Hab ich soweit auch hinbekommen aber es gibt mit Sicherheit einen besseren Weg - da ich mich gerne in PHP weiter entwickeln möchte wäre ich für ein paar Denkanstösse dankbar.
Zum folgenden Code gleich noch paar Fagen...
wen ich den Query innerhalb der Schleife ausführe, wird dann jedesmal eine neue Verbindung zur Datenbank aufgebaut?
Muss ich diese Verbindung explizit wieder trennen?
Wäre es Performance sparender hier mit Perpared Statements zu arbeiten?
(Hab das so verstanden das diese vorbereitet werden und dann per Execute immer wieder ausgeführt werden können, ich versteh nur nicht wo darin dann der Unterschied liegt weil sich die Werte ja jedesmal innerhalb des SQL Statements ändern und dieser sich damit auch ändert und neu ausgeführt wird).
Bin PHP Neuling und daher möge man mir verzeihen wen ich jetzt nen "Blödsinn" zusammen gefragt hab...
So, hier der Code...wen man das auch noch optimieren kann(was 100% geht
) wäre ich für nen Tipp dankbar...
Ja ich weis die Schleife is nid so toll, in dem Fall gehts aber weil die Tabelle definitiv nid mehr wie 100 Einträge hat. Denke da könnte ich noch her gehen und vorher die Einträge der Tabelle ermitteln und diese dann in die While-Schleife packen.
Grüße aus Franken
ich möchte Daten aus Tabelle A die den gleichen Wert haben zusammen zählen und dann in Tablle B schreiben. Das ganze soll als Cronjop ausgeführt werden.
Hab ich soweit auch hinbekommen aber es gibt mit Sicherheit einen besseren Weg - da ich mich gerne in PHP weiter entwickeln möchte wäre ich für ein paar Denkanstösse dankbar.
Zum folgenden Code gleich noch paar Fagen...
wen ich den Query innerhalb der Schleife ausführe, wird dann jedesmal eine neue Verbindung zur Datenbank aufgebaut?
Muss ich diese Verbindung explizit wieder trennen?
Wäre es Performance sparender hier mit Perpared Statements zu arbeiten?
(Hab das so verstanden das diese vorbereitet werden und dann per Execute immer wieder ausgeführt werden können, ich versteh nur nicht wo darin dann der Unterschied liegt weil sich die Werte ja jedesmal innerhalb des SQL Statements ändern und dieser sich damit auch ändert und neu ausgeführt wird).
Bin PHP Neuling und daher möge man mir verzeihen wen ich jetzt nen "Blödsinn" zusammen gefragt hab...

So, hier der Code...wen man das auch noch optimieren kann(was 100% geht

PHP-Code:
$i = 1;
while ($i <= 100){
$sql = "SELECT COUNT(a_id)FROM tab_a WHERE a_id = '$i'";
$send = $db->query($sql);
$data[$i] = $send->fetchAll();
$i++;
}
foreach ($data as $dat){
$dummy = $dat[0]['COUNT(a_id)'];
$y++;
if($dat[0]['COUNT(a_id)'] != 0){
$sql = "UPDATE tabelle_b SET wert='$dummy' WHERE id='$y'";
$db->query($sql);
}
}
Grüße aus Franken
Kommentar