Latest web development tutorials

clause MySQL COMME

Nous savons que l'aide de la commande SQL SELECT pour lire les données dans MySQL, et nous pouvons utiliser dans la clause WHERE de l'instruction SELECT pour obtenir l'enregistrement spécifié.

La clause WHERE peut utiliser le signe égal (=) pour définir les conditions d'acquisition de données, tels que "w3big_author = 'Sanjay'".

Mais parfois, nous avons besoin de champ w3big_author contient tous les enregistrements "jay" caractère, alors nous avons besoin d'utiliser la clause SQL LIKE clause WHERE.

SQL clause LIKE utilisant le signe pour cent (en%) de caractères pour représenter un caractère, similaire à l'expression ou un astérisque (*) régulière UNIX.

Si vous ne l'utilisez le signe pour cent (%), la clause COMME avec un signe égal (=), l'effet est le même.

grammaire

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

SELECT field1, field2,...fieldN table_name1, table_name2...
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • Vous pouvez spécifier une condition dans la clause WHERE.
  • Vous pouvez utiliser la clause LIKE dans la clause WHERE.
  • Vous pouvez utiliser la clause LIKE à la place du signe égal (=).
  • LIKE est généralement utilisé en conjonction avec%, similaire à la recherche d'un méta-caractères.
  • Vous pouvez utiliser AND ou OR pour spécifier une ou plusieurs conditions.
  • Vous pouvez utiliser WHERE ... LIKE clause pour spécifier la condition SUPPRIMER ou commande UPDATE.

Utiliser la clause LIKE dans l'invite de commande

Ci-dessous, nous allons utiliser la commande SQL SELECT WHERE ... clause LIKE pour lire les données à partir de données de table MySQL en w3big_tbl.

Exemples

Voici ce que nous aurons champ w3big_author à "jay" mettre fin à tous les enregistrements de table w3big_tbl:

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

mysql>

Utilisez COMME clause script PHP

Vous pouvez utiliser la fonction mysql_query () de PHP et la même commande SQL SELECT pour amener WHERE ... LIKE clause 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.

Mais si elle est utilisée dans SQL SUPPRIMER ou UPDATE WHERE ... LIKE clause, vous ne devez pas utiliser la fonction mysql_fetch_array ().

Exemples

Voici ce que nous utilisons script PHP lit champ w3big_author à "jay" fin de tous les enregistrements de la table w3big_tbl:

<?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 LIKE "%jay%"';

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);
?>