Mariadb-like-clause

提供:Dev Guides
移動先:案内検索

MariaDB-Like句

WHERE句は、操作が完全一致を使用するときにデータを取得する方法を提供します。 共通の特性を持つ複数の結果が必要な状況では、 LIKE 句は広範なパターンマッチングに対応します。

LIKE句は、パターンマッチをテストし、trueまたはfalseを返します。 比較に使用されるパターンは、次のワイルドカード文字を受け入れます。「%」は文字数(0以上)と一致します。 「」は単一の文字に一致します。 「」ワイルドカード文字は、そのセット内の文字にのみ一致します。つまり、別のセットを使用する場合、ラテン文字は無視されます。 一致はデフォルトで大文字と小文字を区別しません。大文字と小文字を区別するための追加設定が必要です。

NOT LIKE句を使用すると、 not 演算子と同様に、反対の条件をテストできます。

ステートメント式またはパターンがNULLと評価される場合、結果はNULLです。

以下に示す一般的なLIKE句の構文を確認します-

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

コマンドプロンプトまたはPHPスクリプト内でLIKE句を使用します。

コマンドプロンプト

コマンドプロンプトで、単に標準コマンドを使用します-

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             |
+-------------+----------------+----------------------+

Like節を使用したPHPスクリプト

LIKE句を使用するステートメントで* mysql_query()*関数を使用します

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

データの取得に成功すると、次の出力が表示されます-

Product ID: 12345
Nomenclature: Orbitron 4000
Manufacturer: XYZ Corp
Ship Date: 01/01/17
----------------------------------------------
Product ID: 12346
Nomenclature: Orbitron 3000
Manufacturer: XYZ Corp
Ship Date: 01/02/17
----------------------------------------------
Product ID: 12347
Nomenclature: Orbitron 1000
Manufacturer: XYZ Corp
Ship Date: 01/02/17
----------------------------------------------
mysql> Fetched data successfully