Artikkelkatalog
mysql Hvordan spørre som?mysql databaseKinesere liker utsagnsbruk
MySQL LIKE-klausul
Vi vet å bruke SQL SELECT-kommandoen til å lese data i MySQL, og vi kan bruke WHERE-leddet i SELECT-setningen for å få de spesifiserte postene.
Likhetstegnet kan brukes i WHERE-leddet = For å angi betingelsene for å innhente data, for eksempel "chenweiliang_author = 'chenweiliang.com'".
Men noen ganger må vi få alle postene hvis chenweiliang_author-felt inneholder "COM"-tegn, da må vi bruke SQL LIKE-leddet i WHERE-leddet.
Bruke prosenttegn i SQL LIKE-ledd %tegn for å representere et hvilket som helst tegn, lik stjernen i UNIX eller regulære uttrykk *.
Hvis ingen prosenttegn er brukt %, LIKE-ledd med likhetstegn = Effekten er den samme.
grammatikk
Følgende er den generelle syntaksen til en SQL SELECT-setning for å lese data fra en datatabell ved å bruke LIKE-leddet:
SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
- Du kan spesifisere hvilken som helst betingelse i WHERE-leddet.
- Du kan bruke LIKE-leddet i WHERE-leddet.
- Du kan bruke LIKE-leddet i stedet for likhetstegnet =.
- LIKE er vanligvis forbundet med % Brukt sammen, ligner på et metategnsøk.
- Du kan spesifisere en eller flere betingelser ved å bruke OG eller ELLER.
- Du kan bruke WHERE...LIKE-leddet i kommandoene DELETE eller UPDATE for å spesifisere betingelser.
Bruke LIKE-klausulen i ledeteksten
Nedenfor vil vi bruke WHERE...LIKE-leddet i SQL SELECT-kommandoen for å lese data fra MySQL-datatabellen chenweiliang_tbl.
Forekomst
Følgende er hvordan vi får chenweiliang_author-feltet i chenweiliang_tbl-tabellen med COM for alle poster som slutter med:
SQL UPDATE-setning:
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)
Bruker LIKE-klausul i PHP-skript
Du kan bruke PHP-funksjonen mysqli_query() og den samme SQL SELECT-kommandoen med en WHERE...LIKE-klausul for å hente data.
Denne funksjonen brukes til å utføre SQL-kommandoer og deretter sende ut data for alle spørringer gjennom PHP-funksjonen mysqli_fetch_assoc().
Men hvis det er en SQL-setning som bruker WHERE...LIKE-leddet i DELETE eller UPDATE, er det ikke nødvendig å bruke mysqli_fetch_array()-funksjonen.
Forekomst
Slik bruker vi et PHP-skript til å lese alle poster som slutter på COM i chenweiliang_author-feltet i chenweiliang_tbl-tabellen:
MySQL DELETE klausul test:
<?
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);
?>Hope Chen Weiliang blogg ( https://www.chenweiliang.com/ ) delte "Hvordan spørre MySQL like? Bruken av like-setning i MySQL-database", som er nyttig for deg.
Velkommen til å dele lenken til denne artikkelen:https://www.chenweiliang.com/cwl-474.html
