php - 运营商的问题

标签 php mysql

我有这个表格,我用它来从数据库中搜索特定记录。

这是查询:

$sql = "select * from `hostess` where first_name_en like '%$term' or family_name_en like '%$term%' order by `family_name_en` asc";

问题是,如果我搜索 ele 就会出现所有包含 ele 的名称,例如 elena 等等,但是如果我写 elena 什么也没有。

怎么会

最佳答案

您在第一个 LIKE 中遗漏了一个百分比。 目前你的说法是搜索任何以 ele 结尾的名字。

  1. LIKE '%ele' - 将匹配任何以 ele 结尾的内容
  2. LIKE 'ele%' - 将匹配任何以 ele 开头的内容
  3. LIKE '%ele%' - 将匹配任何包含 ele 的内容

关于php - 运营商的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12625415/

相关文章:

mysql - 将行复制到另一个带有更新的表中

php - 浏览器没有立即呈现 ob_flush 输出

php - PHP 和 MYSQL 中的新闻文件显示零结果

php - 如何检测 PHP 中的 X-Accel-Redirect (Nginx)/X-Sendfile (Apache) 支持?

mysql - 使用正则表达式将列中的字符与数字分开

mysql - Ansible Yum 模块无法正常工作

php - apache .htaccess 到 nginx 重写规则

php - Cron中同时运行多个PHP脚本

Mysql:查询这条sql :"select * from user limit 0,1000"时,是否允许删除操作

mysql - 在没有公共(public)或链接列的 MySQL 中加入 3 个不同的表