Aktueller Standort: Startseite> Neueste Artikel> Fähigkeiten zur Optimierung von PHP -Abfragen: Effizient bestimmte Feldwerte ausschließen

Fähigkeiten zur Optimierung von PHP -Abfragen: Effizient bestimmte Feldwerte ausschließen

M66 2025-07-16

Optimierungstipps zum Ausschluss ungleicher Felder in PHP

In der täglichen Entwicklung müssen wir häufig bestimmte Daten ausschließen, die die Kriterien aus der Datenbank nicht erfüllen. Beispielsweise werden nur Datensätze abgerufen, die keine bestimmte Art von Rolle oder Status sind. Wenn diese Art der Abfrage nicht optimiert ist, wenn das Datenvolumen groß ist, führt dies zu einer Leistungsverschlechterung. In diesem Artikel wird vorgestellt, wie SQL -Anweisungen verwendet werden, um Abfragen ohne ungleiche Felder in PHP effizient zu implementieren und tatsächliche Code -Beispiele anzugeben.

Spezifische Feldwerte mit der WO -Klausel ausschließen

Die häufigste Möglichkeit besteht darin, die Where -Klausel zu verwenden, um sie nicht dem (<>) Operator zu entsprechen. Angenommen, wir haben eine Tabelle namens Benutzer und müssen Datensätze ausschließen, deren Rollenfeld Admin ist:

 <?php
// Stellen Sie eine Verbindung zur Datenbank her
$conn = new mysqli("localhost", "root", "", "myDB");

// Überprüfen Sie, ob die Verbindung erfolgreich ist
if ($conn->connect_error) {
    die("Verbindung ist fehlgeschlagen: " . $conn->connect_error);
}

// Abfrage und Ausschluss sind nicht gleichadminAufzeichnungen von
$sql = "SELECT * FROM users WHERE role <> 'admin'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "ID: " . $row["id"]. " - Name: " . $row["name"]. " - Rolle: " . $row["role"]. "<br>";
    }
} else {
    echo "没有符合条件Aufzeichnungen von";
}

// Schließen Sie die Datenbankverbindung
$conn->close();
?>

Über den obigen Code können die angegebenen Feldwerte effektiv aus dem Ergebnissatz ausgeschlossen werden, wodurch die Genauigkeit der Abfrage verbessert wird.

Mehrere Feldwerte mit nicht in ausschließen

Wenn mehrere Werte ausgeschlossen werden müssen, ist die Verwendung von Nicht -in -Aussagen effizienter und semantischer. Das folgende Beispiel zeigt, wie Sie zwei Rollen ausschließen: Admin und Editor :

 <?php
// Stellen Sie eine Verbindung zur Datenbank her
$conn = new mysqli("localhost", "root", "", "myDB");

// Überprüfen Sie, ob die Verbindung erfolgreich ist
if ($conn->connect_error) {
    die("Verbindung ist fehlgeschlagen: " . $conn->connect_error);
}

// Abfrage und Ausschluss sind nicht gleich指定RolleAufzeichnungen von
$roles = "'admin','editor'";
$sql = "SELECT * FROM users WHERE role NOT IN ($roles)";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "ID: " . $row["id"]. " - Name: " . $row["name"]. " - Rolle: " . $row["role"]. "<br>";
    }
} else {
    echo "没有符合条件Aufzeichnungen von";
}

// Schließen Sie die Datenbankverbindung
$conn->close();
?>

Nicht nur in präzisen Anweisungen, sondern auch die Code -Redundanz reduziert, wenn mehrere Werte ausgeschlossen werden müssen. Es handelt sich um eine häufig verwendete Abfrageoptimierungsmethode.

Abschluss

Durch rationales Verwenden von Wo und nicht in Aussagen in SQL kann die Effizienz der PHP -Interaktion mit Datenbanken erheblich verbessert werden, insbesondere wenn große Datensätze verarbeitet werden, ist der Effekt offensichtlicher. Es wird empfohlen, dass Entwickler diese Ausschlussbedingungen flexibel entsprechend den tatsächlichen Bedürfnissen anwenden, um PHP-Programme mit höherer Leistung zu schreiben.