Latest web development tutorials

MySQL clause where

Nous savons que pour lire les données à l'aide instruction SQL SELECT de la table MySQL.

Pour sélectionner conditionnellement des données d'une table, vous pouvez ajouter une clause WHERE à l'instruction SELECT.

grammaire

Ce qui suit est une instruction SQL SELECT avec une clause WHERE pour lire les données de la syntaxe générale de la table de données:

SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • Vous pouvez interroger en utilisant une ou plusieurs tables, utilisez une virgule entre les tables (,) la segmentation, et utiliser une clause WHERE pour définir les critères de recherche.
  • Vous pouvez spécifier une condition dans la clause WHERE.
  • Vous pouvez utiliser AND ou OR pour spécifier une ou plusieurs conditions.
  • Clause WHERE peut également être appliquée à la DELETE SQL ou la commande UPDATE.
  • Clause WHERE est similaire aux langages de programmation si les conditions, basées sur les valeurs de champ table MySQL pour lire des données spécifiques.

Ce qui suit est une liste des opérateurs qui peuvent être utilisés dans la clause WHERE.

A est supposé dans le tableau suivant, les exemples 20-10 B

opérateurs description Exemples
= Equate pour détecter si deux valeurs sont égales, elle renvoie true si elles sont égales (A = B) retourne false.
<> ,! = Est pas égal à détecter si deux valeurs sont égales, si les rendements ne correspondront pas vrai (A! = B) retourne vrai.
> Signe supérieur, la valeur de détection de gauche est supérieure à la valeur de la droite vers la gauche si la valeur est supérieure à la valeur du droit de retour vrai (A> B) retourne false.
< Pas moins de la valeur détectée sur la gauche est inférieure à la valeur de la droite vers la gauche si la valeur est inférieure à la valeur réelle du droit de retour (A <B) renvoie true.
> = Supérieur ou nombre égal à détecter la gauche est supérieure ou égale à la valeur sur la droite si la valeur est supérieure ou égale à la gauche de la droite de return true (A> = B) retourne false.
<= Inférieur ou égal numéros, vérifier si la valeur est inférieure à la gauche ou à droite de valeur égale, si la valeur est inférieure ou égale à la gauche de la droite de return true (A <= B) renvoie true.

Si nous voulons table de données MySQL lit les données spécifiées, la clause WHERE est très utile.

Comme condition d'utilisation de la clé primaire à la clause WHERE de la requête est très rapide.

Si les conditions ne sont pas donnés les enregistrements correspondants dans la table, la requête ne renvoie pas de données.


Lit les données à partir de l'invite de commande

Nous allons utiliser la clause WHERE dans l'instruction SQL SELECT pour lire des données dans des tables de données MySQL w3big_tbl:

Exemples

L'exemple suivant va lire tous les enregistrements de table w3big_tbl w3big_author valeurs de champ Sanjay de:

root@host# mysql -u root -p password;
Enter password:*******
mysql> use w3big;
Database changed
mysql> SELECT * from w3big_tbl WHERE w3big_author='Sanjay';
+-------------+----------------+-----------------+-----------------+
| w3big_id | w3big_title | w3big_author | submission_date |
+-------------+----------------+-----------------+-----------------+
|           3 | JAVA Tutorial  | Sanjay          | 2007-05-21      |
+-------------+----------------+-----------------+-----------------+
1 rows in set (0.01 sec)

mysql>

MySQL comparaison de chaînes de la clause WHERE ne sont pas sensibles à la casse. Vous pouvez utiliser le mot-clé BINARY pour définir la clause WHERE comparaisons de chaînes sont sensibles à la casse.

Les exemples suivants

root@host# mysql -u root -p password;
Enter password:*******
mysql> use w3big;
Database changed
mysql> SELECT * from w3big_tbl \
          WHERE BINARY w3big_author='sanjay';
Empty set (0.02 sec)

mysql>

Utiliser un script PHP pour lire les données

Vous pouvez utiliser la fonction PHP mysql_query () et la même commande SQL SELECT pour amener la clause WHERE pour récupérer les données.

Cette fonction est utilisée pour exécuter des commandes SQL, puis () pour les données de sortie pour toutes les requêtes par le biais de la fonction PHP mysql_fetch_array.

Exemples

Les exemples suivants seront w3big_tbl tableau renvoie la valeur du champ w3big_author records Sanjay:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl
        WHERE w3big_author="Sanjay"';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "Tutorial ID :{$row['w3big_id']}  <br> ".
         "Title: {$row['w3big_title']} <br> ".
         "Author: {$row['w3big_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
} 
echo "Fetched data successfully\n";
mysql_close($conn);
?>