MySQL のような子句


MySQL LIKE 句

MySQL では SQL SELECT コマンドを使用してデータを読み取り、SELECT ステートメントの WHERE 句を使用して指定されたレコードを取得できることがわかりました。

WHERE 句で等号 = を使用して、「user_author = 'PHP 中国語 Web サイト'」など、データを取得するための条件を設定できます。

しかし、user_author フィールドに「php」文字が含まれるすべてのレコードを取得する必要がある場合は、WHERE 句で SQL LIKE 句を使用する必要があります。

パーセント記号 % 文字は、UNIX または正規表現のアスタリスク * と同様に、SQL LIKE 句で任意の文字を表すために使用されます。

パーセント記号 % が使用されていない場合、LIKE 句は等号 = と同じ効果があります。

構文

以下は、LIKE 句を使用してデータテーブルからデータを読み取る SQL SELECT ステートメントの一般的な構文です。

SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • WHERE 句には任意の条件を指定できます。

  • WHERE句でLIKE句を使用できます。

  • 等号 = の代わりに LIKE 句を使用できます。

  • LIKE は通常、メタキャラクター検索と同様に % とともに使用されます。

  • AND または OR を使用して 1 つ以上の条件を指定できます。

  • DELETE または UPDATE コマンドで WHERE...LIKE 句を使用して条件を指定できます。

コマンドプロンプトでLIKE句を使用する

以下では、SQL SELECTコマンドでWHERE...LIKE句を使用して、MySQLデータテーブルユーザーからデータを読み取ります。

以下は、user_author フィールドの「php」で終わるすべてのレコードを user テーブルから取得する方法です。 user_author LIKE ' %php';

+----------+---------------+------------- -- +------+

| ユーザー名 |

+-------+-- --- ----------+--------------+----------------------------+

| PHP を学ぶ 2015-05-01 | Python を学ぶ 2016-03-06 | --------+---- ----------+------+---------- --------+

セット内の 2 行 (0.01 秒)

PHP スクリプトで LIKE 句を使用する

PHP 関数 mysqli_query() と同じ SQL SELECT コマンドを WHERE で使用できます...LIKE 句を使用してデータを取得します。

この関数は、SQL コマンドを実行し、PHP 関数 mysqli_fetch_array() を通じてクエリされたすべてのデータを出力するために使用されます。

ただし、DELETE または UPDATE で WHERE...LIKE 句を使用する SQL ステートメントの場合は、mysqli_fetch_array() 関数を使用する必要はありません。

以下は、PHP スクリプトを使用して、user テーブルの user_author フィールド内の php で終わるすべてのレコードを読み取る方法です:


<?php
header("Content-Type: text/html;charset=utf) -8 ");

$dbhost = 'localhost'; // mysqlサーバーのホストアドレス
$dbuser = 'root'; // mysqlユーザー名
$dbpass = 'root'; mysqli_connect ($dbhost, $dbuser, $dbpass );
if(! $conn )
{
die('接続に失敗しました: ' . mysqli_error($conn));
}
// 中国語の文字化けを防ぐためにエンコーディングを設定します
mysqli_query( $conn , "set names utf8" );

$sql = 'SELECT user_id, user_title,
user_author, submit_date
FROM user
WHERE user_author LIKE "%php"';

mysqli_select_db( $conn, 'demo' );
$retval = mysqli_query( $conn , $sql );
if(! $retval )
{
die('データを読み取れません: ' .mysqli_error($conn));
}
echo '<h2>PHP 中国語 Web サイト mysqli_fetch_array test<h2>' ;
echo '<table border="1"><tr><td>チュートリアル ID</td><td>タイトル</td><td>著者</td><td>送信日</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC))
{
echo "<tr><td> {$row['user_id']}< ;/td> ".
" " 'user_author']} </td> ".
" "<td>{$row['submission_date']} </td> ".
" "</ tr>";
}
echo '< /table>';
mysqli_close($conn);
?>

Image 1.jpg

関連ビデオチュートリアルの推奨事項: LIKE と MIN