Position actuelle: Accueil> Derniers articles> Compétences d'optimisation des requêtes PHP: exclure efficacement les valeurs de champ spécifiées

Compétences d'optimisation des requêtes PHP: exclure efficacement les valeurs de champ spécifiées

M66 2025-07-16

Conseils d'optimisation pour exclure les champs inégaux en PHP

Dans le développement quotidien, nous devons souvent exclure certaines données qui ne répondent pas aux critères de la base de données. Par exemple, seuls des enregistrements qui ne sont pas un certain type de rôle ou de statut sont récupérés. Si ce type de requête n'est pas optimisé lorsque le volume de données est important, il entraînera une dégradation des performances. Cet article introduira comment utiliser les instructions SQL pour implémenter efficacement la requête à l'exclusion des champs inégaux en PHP, et fournir des exemples de code réels.

Exclure des valeurs de champ spécifiques en utilisant la clause où

La façon la plus courante consiste à utiliser la clause WHERE pour correspondre, il n'égmente pas l'opérateur (<>). Supposons que nous ayons un tableau appelé utilisateurs et que nous devons exclure les enregistrements dont le champ de rôle est l'administrateur :

 <?php
// Connectez-vous à la base de données
$conn = new mysqli("localhost", "root", "", "myDB");

// Vérifiez si la connexion réussit
if ($conn->connect_error) {
    die("Échec de la connexion: " . $conn->connect_error);
}

// La requête et l&#39;exclusion ne sont pas égalesadminDes enregistrements de
$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"]. " - Nom: " . $row["name"]. " - Rôle: " . $row["role"]. "<br>";
    }
} else {
    echo "没有符合条件Des enregistrements de";
}

// Fermez la connexion de la base de données
$conn->close();
?>

Grâce au code ci-dessus, les valeurs de champ spécifiées peuvent être effectivement exclues de l'ensemble de résultats, améliorant ainsi la précision de la requête.

Exclure plusieurs valeurs de champ en utilisant non dans

Lorsque plusieurs valeurs doivent être exclues, l'utilisation de non dans les instructions est plus efficace et sémantique. L'exemple suivant montre comment exclure deux rôles: administrateur et éditeur :

 <?php
// Connectez-vous à la base de données
$conn = new mysqli("localhost", "root", "", "myDB");

// Vérifiez si la connexion réussit
if ($conn->connect_error) {
    die("Échec de la connexion: " . $conn->connect_error);
}

// La requête et l&#39;exclusion ne sont pas égales指定RôleDes enregistrements de
$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"]. " - Nom: " . $row["name"]. " - Rôle: " . $row["role"]. "<br>";
    }
} else {
    echo "没有符合条件Des enregistrements de";
}

// Fermez la connexion de la base de données
$conn->close();
?>

L'utilisation non seulement d'instructions concises, mais réduit également la redondance du code lorsque plusieurs valeurs doivent être exclues. Il s'agit d'une méthode d'optimisation de requête couramment utilisée.

Conclusion

En utilisant rationnellement et non dans les instructions de SQL, l'efficacité de l'interaction PHP avec les bases de données peut être considérablement améliorée, en particulier lors du traitement des ensembles de données importants, l'effet est plus évident. Il est recommandé que les développeurs appliquent de manière flexible ces conditions d'exclusion en fonction des besoins réels, afin d'écrire des programmes PHP plus performants.