php - 搜索以特定词为起始词的记录

标签 php mysql

我想在MySQL数据库中搜索一条记录,但是当使用这样的命令时:

$sql="SELECT name FROM students WHERE name LIKE '%name%'";

它返回所有包含它的字符的记录。

但我只想搜索名称以该字符开头的记录。

最佳答案

您需要删除其中一个通配符,像这样尝试:

$sql="SELECT name FROM students WHERE name LIKE 'name%'";

% 字符表示这一边的任何字符。

因此,如果您执行 %name,则表示任何以 name 结尾的内容,如果您执行 name%,则表示任何以姓名。但是,当您执行 %name% 时,它意味着任何包含单词 name

的内容

一些例子:

SELECT name FROM students WHERE name LIKE 'name%'

会匹配 'namemy' 但不会匹配 'myname'

SELECT name FROM students WHERE name like '%name'

会匹配 'myname' 但不会匹配 'namemy'

SELECT name FROM students WHERE name like '%name%'

将同时匹配 'myname' 和 'namemy'

关于php - 搜索以特定词为起始词的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44278401/

相关文章:

php - CMSimple_XH PHP 5.5

php - Zend Framework::忽略特定操作的预调度

javascript - 如何识别设备并使用个人电脑设备代码和移动设备(ios 或 android)的第二个代码?

php - 如何选择 MySQL 中最常见的值?

Mysql + 帮助创建 UNION 查询

php - 使用 PHP 从 Stack Overflow API 获取 null 作为响应

PHP转换西里尔文

mysql - 如何删除 mysql 中的前导斜杠和尾随斜杠

c# - 主键始终插入零

php - 无法通过 PHP session 更新 MySQL 表