Kā veikt vaicājumu MySQL like?Līdzīgā paziņojuma lietošana MySQL datu bāzē

mysql Kā jautāt patīk?mysql datu bāzeĶīniešiem patīk paziņojumu lietojums

MySQL LIKE klauzula

Mēs zinām, ka jāizmanto komanda SQL SELECT, lai lasītu datus MySQL, un mēs varam izmantot WHERE klauzulu priekšrakstā SELECT, lai iegūtu norādītos ierakstus.

Vienādības zīmi var izmantot WHERE klauzulā = Lai iestatītu nosacījumus datu iegūšanai, piemēram, "chenweiliang_author = 'chenweiliang.com'".

Bet dažreiz mums ir jāiegūst visi ieraksti, kuru laukā chenweiliang_author ir rakstzīmes "COM", tad mums ir jāizmanto klauzula SQL LIKE klauzulā WHERE.

Procentu zīmju izmantošana SQL LIKE klauzulās %rakstzīme, lai attēlotu jebkuru rakstzīmi, līdzīgi zvaigznītei UNIX vai regulārajās izteiksmēs *.

Ja netiek izmantota procentu zīme %, LIKE klauzula ar vienādības zīmi = Efekts ir tāds pats.

gramatika

Tālāk ir sniegta vispārīgā SQL SELECT priekšraksta sintakse, lai nolasītu datus no datu tabulas, izmantojot klauzulu LIKE:

SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • Klauzulā WHERE varat norādīt jebkuru nosacījumu.
  • Klauzulā WHERE varat izmantot klauzulu LIKE.
  • Vienlīdzības zīmes vietā varat izmantot klauzulu LIKE =.
  • LIKE parasti asociējas ar % Izmanto kopā, līdzīgi metarakstzīmju meklēšanai.
  • Varat norādīt vienu vai vairākus nosacījumus, izmantojot UN vai VAI.
  • Lai norādītu nosacījumus, komandās DELETE vai UPDATE varat izmantot klauzulu WHERE...LIKE.

Izmantojot klauzulu LIKE komandu uzvednē

Tālāk mēs izmantosim klauzulu WHERE...LIKE komandā SQL SELECT, lai nolasītu datus no MySQL datu tabulas chenweiliang_tbl.

Piemērs

Tālāk ir norādīts, kā mēs iegūsim lauku chenweiliang_author tabulā chenweiliang_tbl ar KOM visiem ierakstiem, kas beidzas ar:

SQL UPDATE paziņojums:

mysql> use chenweiliang;
Database changed
mysql> SELECT * from chenweiliang_tbl WHERE chenweiliang_author LIKE '%COM';
+-----------+---------------+---------------+-----------------+
| chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date |
+-----------+---------------+---------------+-----------------+
| 3 | 学习 Java | chenweiliang.com | 2015-05-01 |
| 4 | 学习 Python | chenweiliang.com | 2016-03-06 |
+-----------+---------------+---------------+-----------------+
2 rows in set (0.01 sec)

Klauzulas LIKE izmantošana PHP skriptā

Lai iegūtu datus, varat izmantot PHP funkciju mysqli_query() un to pašu SQL SELECT komandu ar WHERE...LIKE klauzulu.

Šo funkciju izmanto, lai izpildītu SQL komandas un pēc tam izvadītu datus visiem vaicājumiem, izmantojot PHP funkciju mysqli_fetch_assoc().

Bet, ja tas ir SQL priekšraksts, kurā tiek izmantota klauzula WHERE...LIKE funkcijās DELETE vai UPDATE, funkcija mysqli_fetch_array() nav jāizmanto.

Piemērs

Tālāk ir norādīts, kā mēs izmantojam PHP skriptu, lai tabulas chenweiliang_tbl laukā chenweiliang_author nolasītu visus ierakstus, kas beidzas ar COM:

MySQL DELETE klauzulas pārbaude:

 
<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl
 WHERE chenweiliang_author LIKE "%COM"';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

发表 评论

Jūsu e-pasta adrese netiks publicēta. 必填 项 已 用 * Etiķete

Ritiniet uz augšu