从mysql数据库中搜索数据,例如弹性搜索

时间:2018-08-01 06:52:08

标签: php mysql codeigniter elasticsearch

我正在尝试从整个mysql数据库中获取数据,而不是从单个表中获取数据。 当我尝试使用LIKE查询进行搜索时,此方法有效,但仅适用于特定键。

我尝试搜索谁是管理员,因此它将返回admin name表中的所有相关数据(emailmysql

我尝试以下代码:

$this->db->select()
->like('username', 'admin')
->like('email','admin@gmail.com')
->get('users');

1 个答案:

答案 0 :(得分:0)

希望这对您有帮助:

在查询中使用or_like,并且select子句应类似于$this->db->select('*')

$username = 'your-username';
$email = 'your-email';
$results = $this->db->select('*')
       ->like('username', $username)
       ->or_like('email',$email)
       ->get('users')->result();
print_r($results);

如果您想使用特定的usernameemail获得结果,您还可以使用where子句,如下所示:

$username = 'your-username';
$email = 'your-email';
$results = $this->db->select('*')
            ->where('username', $username)
            ->or_where('email',$email)
            ->get('users')->result();
print_r($results);

更多信息:https://www.codeigniter.com/user_guide/database/query_builder.html#looking-for-similar-data