Latest web development tutorials

MySQL cláusula LIKE

Sabemos que con el comando SQL SELECT para leer los datos en MySQL, y podemos utilizar en la cláusula WHERE de la instrucción SELECT para obtener el registro especificado.

La cláusula WHERE puede utilizar el signo igual (=) para fijar las condiciones de adquisición de datos, tales como "w3big_author = 'Sanjay'".

Pero a veces tenemos que conseguir w3big_author campo contiene todos los registros "Jay" carácter, entonces tenemos que utilizar la cláusula SQL LIKE cláusula WHERE.

cláusula LIKE de SQL utilizando el signo de porcentaje (%) para representar cualquier carácter, similar a la expresión o un asterisco (*) regular de UNIX.

Si no se utiliza el signo de porcentaje (%), COMO cláusula con un signo igual (=) el efecto es el mismo.

gramática

La siguiente es una instrucción SQL SELECT que utiliza la cláusula LIKE para leer los datos de la sintaxis general tabla de datos:

SELECT field1, field2,...fieldN table_name1, table_name2...
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • Se puede especificar cualquier condición de la cláusula WHERE.
  • Puede utilizar la cláusula LIKE en la cláusula WHERE.
  • Puede utilizar la cláusula LIKE en lugar del signo igual (=).
  • LIKE se utiliza generalmente en conjunción con%, similar a la búsqueda de un meta-caracteres.
  • Puede usar AND u OR para especificar una o más condiciones.
  • Puede utilizar DONDE ... como cláusula para especificar la condición BORRAR o comando UPDATE.

Utilice la cláusula LIKE en la línea de comandos

A continuación vamos a utilizar el comando SQL SELECT ... DONDE cláusula LIKE para leer datos de una tabla de datos MySQL en w3big_tbl.

Ejemplos

Esto es lo que obtendremos campo w3big_author a "Jay" poner fin a todos los registros de la tabla w3big_tbl:

[email protected]# 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>

Empleo como cláusula en el script PHP

Puede utilizar la función mysql_query () de PHP y el mismo comando SELECT de SQL para llevar DONDE ... como cláusula para recuperar los datos.

Esta función se utiliza para ejecutar comandos SQL, entonces () para datos de salida para todas las consultas a través de mysql_fetch_array función de PHP.

Pero si se utiliza en SQL DELETE o UPDATE DONDE ... como la cláusula, no es necesario utilizar la función mysql_fetch_array ().

Ejemplos

Esto es lo que usamos script PHP lee campo w3big_author a "Jay" final de todos los registros de la tabla 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);
?>