MySQL IN-Klausel-Artikelnummernbegrenzung
Bei Verwendung einer IN-Klausel in MySQL hängt die Anzahl der darin zulässigen Elemente hauptsächlich vom max_allowed_packet
-Wert ab. Dieser in Byte angegebene Wert legt die maximale Größe eines einzelnen Pakets fest, das an den MySQL-Server gesendet und von diesem empfangen werden kann.
Sie können möglicherweise die Leistung Ihrer äußeren Abfrage verbessern, indem Sie die tatsächliche Benutzer-ID als Zeichenfolge statt als Unterabfrage speichern. Dies liegt daran, dass die Datenbank-Engine die Benutzer-ID direkt aus der Zeichenfolge abrufen kann, ohne die Unterabfrage jedes Mal ausführen zu müssen.
Die beste Wahl, eine Unterabfrage zu verwenden oder die tatsächliche Benutzer-ID zu speichern, hängt von mehreren Faktoren ab:
max_allowed_packet
-Grenzwerts liegen. Wenn die Anzahl der Benutzer-IDs groß ist, kann die Zeichenfolge zu groß werden, um in ein Paket zu passen. Abhängig von Ihrer spezifischen Situation sollten Sie beide Methoden ausprobieren, um die beste Lösung in Bezug auf Leistung und Effizienz zu ermitteln.
Das obige ist der detaillierte Inhalt vonWie behandelt man viele Elemente in einer MySQL-IN-Klausel am besten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!