一、SQL语句中的模糊查找
主要通过LIKE(不区分大小写)关键字实现模糊查找。LIKE条件一般用在指定搜索某字段的时候, 通过"%"或者" _" 通配符的作用实现模糊查找功能,通配符可以在字段前面也可以在后面或前后都有。只通过LIKE是无法实现模糊查找的,因此通配符的作用不可忽略。
下面是三个实例:
搜索以PHP开头:
SELECT * FROM table WHERE title LIKE 'PHP%'
SELECT * FROM table WHERE title LIKE 'PHP%'
搜索以PHP结束:
SELECT * FROM table WHERE title LIKE '%PHP'
搜索包含PHP100:
SELECT * FROM table WHERE title LIKE '%PHP%'
注:%表示0个或多个字符构成的字符串,_表示单个字符,类似于正则表达式中元字符的作用
在LIKE后面可以增加其他条件,类似于if语句
例子的数据库中的内容
<?php $conn = @mysql_connect("localhost", "root", "") or die("数据库链接错误"); mysql_select_db("bbs", $conn); mysql_query("set names 'GBK'"); //使用GBK中文编码; if($_GET['key']) { $sql = "SELECT * FROM `text` WHERE content LIKE '%$_GET[key]%'"; $query = mysql_query($sql); while($r=mysql_fetch_array($query)) { echo "$r[content]"."<br>"; } } ?> <html> <body> <form action="" method="get"> 关键字: <input type="text" name="key" /> <input type="submit" name="sub" value="搜索" /> </form> </body> </html>
搜索php的效果图