PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   SQL / Datenbanken (https://www.php-resource.de/forum/sql-datenbanken/)
-   -   Jede Anfrage einzeln oder Tabelle in Array speichern (https://www.php-resource.de/forum/sql-datenbanken/104846-jede-anfrage-einzeln-oder-tabelle-in-array-speichern.html)

RettNews 17-11-2014 23:56

Jede Anfrage einzeln oder Tabelle in Array speichern
 
Hallo,

was wäre schneller bzw. System schonender?

Ich habe eine Tabelle mit 5000 Einträgen und möchte ca. 500 Werte prüfen, ob sie in der Tabelle vorhanden sind.

Wäre es jetzt besser wenn ich die komplette Tabelle in einen Array oder ein Objekt speicher und dann 500 x prüfe ob der Wert in dem Array existiert oder für jeden Wert einen Abfrage der Datenbank ausführe (500 x).

Gruß

Makus

Kropff 18-11-2014 11:28

Wie wäre es per SQL mit WHERE ... IN?

Peter

RettNews 18-11-2014 14:28

Verstehe ich nicht ganz, ich laufe die 500 Werte durch und möchte von jedem wissen ob dieser Wert in den 5000 Datensätzen vorhanden ist, wenn nicht wird wird mit dem Wert weiter gearbeitet.

Also geht es mir nicht um die Werte in der Datenbank, sondern um die Werte in dem Array die nicht in der Datenbank vorhanden sind (die sollen später angzeigt werden um zu entschieden was damit passiert).

KWEBSde 18-11-2014 16:50

Die beiden Möglichkeiten hast Du ja schon aufgezeigt. Lässt sich ja eigentlich relativ schnell umsetzen. Messe (microtime) die Zeit und Du hast die Antwort was schneller abgearbeitet wird. ;)

wahsaga 19-11-2014 15:12

Für jeden der 500 Werte eine extra Datenbank-Abfrage wäre die schlechteste Möglichkeit.

Ich würde trotzdem das von Kropff vorgeschlagene WHERE IN probieren – und damit alle Werte (von den 500) selektieren, die in der Datenbank bereits vorhanden sind. Dann brauchst du anschließend nur noch die „Differenz“ aus dieser Ergebnismenge und deinem 500-Werte-Array zu bilden.


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:26 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG