Учебники

MariaDB — Like Clause

Предложение WHERE предоставляет способ извлечения данных, когда операция использует точное совпадение. В ситуациях, требующих нескольких результатов с общими характеристиками, предложение LIKE обеспечивает широкое сопоставление с образцом.

Предложение LIKE проверяет совпадение с шаблоном, возвращая true или false. Шаблоны, используемые для сравнения, принимают следующие символы подстановки: «%», что соответствует количеству символов (0 или более); и «_», который соответствует одному символу. Подстановочный знак «_» соответствует только символам в его наборе, что означает, что он будет игнорировать латинские символы при использовании другого набора. По умолчанию совпадения не чувствительны к регистру и требуют дополнительных настроек чувствительности к регистру.

Предложение NOT LIKE позволяет протестировать противоположное условие, как и оператор not .

Если выражение оператора или шаблон имеют значение NULL, результатом будет NULL.

Просмотрите общий синтаксис предложения LIKE, приведенный ниже —

SELECT field, field2,... FROM table_name, table_name2,...
WHERE field LIKE condition

Используйте предложение LIKE в командной строке или в сценарии PHP.

Командная строка

В командной строке просто используйте стандартную команду —

root@host# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> SELECT * from products_tbl
   WHERE product_manufacturer LIKE 'XYZ%';
+-------------+----------------+----------------------+
| ID_number   | Nomenclature   | product_manufacturer |
+-------------+----------------+----------------------+
| 12345       | Orbitron 4000  | XYZ Corp             |
+-------------+----------------+----------------------+
| 12346       | Orbitron 3000  | XYZ Corp             |
+-------------+----------------+----------------------+
| 12347       | Orbitron 1000  | XYZ Corp             |
+-------------+----------------+----------------------+

PHP Script с использованием предложения Like

Используйте функцию mysql_query () в выражениях, использующих предложение LIKE

<?php
   $dbhost = 'localhost:3036';
   $dbuser = 'root';
   $dbpass = 'rootpassword';
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
   if(! $conn ) {
      die('Could not connect: ' . mysql_error());
   }

   $sql = 'SELECT product_id, product_name, product_manufacturer, ship_date
      FROM products_tbl WHERE product_manufacturer LIKE "xyz%"';
   
   mysql_select_db('PRODUCTS');
   $retval = mysql_query( $sql, $conn );
   
   if(! $retval ) {
      die('Could not get data: ' . mysql_error());
   }

   while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
      echo "Product ID:{$row['product_id']} <br> ".
         "Name: {$row['product_name']} <br> ".
         "Manufacturer: {$row['product_manufacturer']} <br> ".
         "Ship Date: {$row['ship_date']} <br> ".
         "--------------------------------<br>";
   }
   
   echo "Fetched data successfully\n";
   mysql_close($conn);
?>

При успешном извлечении данных вы увидите следующий вывод: