MySQL SEPERTI 子句


Klausa MySQL LIKE

Kami tahu bahawa kami menggunakan arahan SQL SELECT untuk membaca data dalam MySQL, dan kami boleh menggunakan klausa WHERE dalam pernyataan SELECT . untuk mendapatkan rekod yang ditentukan.

Anda boleh menggunakan tanda sama = dalam klausa WHERE untuk menetapkan syarat untuk mendapatkan data, seperti "pengguna_pengarang = 'laman web PHP Cina'".

Tetapi kadangkala kita perlu mendapatkan semua rekod yang medan pengarang_penggunanya mengandungi aksara "php", maka kita perlu menggunakan klausa SQL LIKE dalam klausa WHERE.

Katak peratus tanda % digunakan dalam klausa SQL LIKE untuk mewakili sebarang aksara, serupa dengan asterisk * dalam UNIX atau ungkapan biasa.

Jika tanda peratus % tidak digunakan, klausa LIKE mempunyai kesan yang sama dengan tanda sama dengan =.

Syntax

Berikut ialah sintaks umum pernyataan SQL SELECT untuk membaca data daripada jadual data menggunakan klausa LIKE:

SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • Anda boleh menentukan sebarang syarat dalam klausa WHERE.

  • Anda boleh menggunakan klausa LIKE dalam klausa WHERE.

  • Anda boleh menggunakan klausa LIKE dan bukannya tanda sama dengan =.

  • LIKE biasanya digunakan dengan %, serupa dengan carian metacharacter.

  • Anda boleh menentukan satu atau lebih syarat menggunakan DAN atau ATAU.

  • Anda boleh menggunakan klausa WHERE...LIKE dalam perintah DELETE atau UPDATE untuk menentukan syarat.

Menggunakan klausa LIKE dalam command prompt

Di bawah ini kita akan menggunakan WHERE dalam arahan SQL SELECT . Klausa .LIKE untuk membaca data daripada pengguna jadual data MySQL.

Contoh

Berikut ialah cara kami mendapatkan semua rekod yang berakhir dengan php dalam medan pengguna_pengarang daripada jadual pengguna:

mysql> ;

Pangkalan data berubah

mysql> PILIH * dari user_tbl DI MANA pengguna_pengarang SUKA '%php';

+------------; --------------------------+--------------------------+

|. pengguna_tajuk |. - ------------+-----------------+

| 3 |. 05 -01 |

|. 4 |. -----------------------------------------

2 baris dalam set (0.01 saat)

Menggunakan klausa LIKE dalam skrip PHP

Anda boleh menggunakan fungsi PHP mysqli_query() dan Sama Perintah SQL SELECT dengan klausa WHERE...LIKE untuk mendapatkan data. Fungsi ini digunakan untuk melaksanakan perintah SQL dan kemudian mengeluarkan semua data yang ditanya melalui fungsi PHP mysqli_fetch_array().

Tetapi jika ia adalah pernyataan SQL menggunakan klausa WHERE...LIKE dalam DELETE atau UPDATE, tidak perlu menggunakan fungsi mysqli_fetch_array().

Contoh

Berikut ialah skrip PHP yang kami gunakan untuk membaca semua rekod yang berakhir dengan php dalam medan pengguna_pengarang dalam jadual pengguna:


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

$dbhost = 'localhost'; // alamat hos pelayan mysql
$dbuser = 'root'; 🎜>$dbpass = ' root'; // nama pengguna dan kata laluan mysql
$conn = mysqli_connect($dbhost, $dbuser, $dbpass); Tetapkan pengekodan untuk mengelakkan aksara Cina yang kacau
mysqli_query($conn, "set names utf8");

$sql = 'SELECT user_id, user_title,
user_author, submission_date
FROM user
DI MANA pengarang_pengguna SUKA "%php"';

mysqli_select_db( $conn , 'demo' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('Tidak dapat membaca data: ' . mysqli_error($conn));
}
echo '<h2>PHP laman web Cina mysqli_fetch_array test<h2>';
echo '<table border="1"><tr><td>ID Tutorial</td>< ;td>Tajuk</td><td>Pengarang</td><td><td> ;/td></tr>';
while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC))
{
echo "<tr><td> {$row['user_id ']}</td> ".
"<td>{$row['user_title ']} </td> ".
" "<td>{$row['user_author' ]} </td> ".
" "<td>{$row['tarikh_serahan'] }</td>

Image 1.jpg

Cadangan tutorial video berkaitan: LIKE dan MIN