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