MySQL 事件记录查询忽略大小写

标签 mysql codeigniter activerecord case-insensitive

我有以下事件记录查询:

$this->db->select('id, firstname, surname');
$this->db->from('users');
$this->db->where('site_id',$siteid);
$this->db->like('firstname', $name);
$this->db->or_like('surname', $name); 
$query = $this->db->get();

除了数据库中我的名字可以包含大写和小写名称外,这工作正常。如果大小写不匹配,则查询失败。

有什么方法可以忽略查询中的大小写吗?

最佳答案

试试这个,对我来说效果很好: (你可以在两侧使用 lower 或 upper 模式来进行不敏感查询)

$this->db->select('id, firstname, surname');
$this->db->from('users');
$this->db->where('site_id',$siteid);
$this->db->like('lower(firstname)', strtolower($name));
$this->db->or_like('lower(surname)', strtolower($name)); 
$query = $this->db->get();

关于MySQL 事件记录查询忽略大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5625215/

相关文章:

来自创建表的 MySQL 错误 #1064

mysql - 撤消来自远程 IP 的访问权限

javascript - 在 Codeigniter 中使用 jQuery ajax 方法将 id 作为属性分配给新添加的行

javascript - 使用 JavaScript 从列表中获取事件类索引

JavaFX 如何添加元素,例如。从存储在数据库 Mysql 中的项目动态创建的按钮?

mysql - PHP PDO MySQL 语法错误

php - CodeIgniter RESTful API 速率限制问题

php - 将 Bootstrap 模式部分 View 动态插入 View 中

mysql - 何时在 Rails 中的表中添加哪些索引

mysql - 在 SQLite (RoR) 上使用 mySQL 的好处等