php - 具有多个表的搜索结果,如查询 CodeIgniter

标签 php mysql codeigniter

CodeIgniter/PHP/MYSQL

我有两个具有这种结构的表。

  1. 国家/地区:ID、国家/地区名称(1、印度尼西亚、2、印度)
  2. STATE:id、country_id、state_name (1,1,Sulawesi Selatan) (2,1,Sulawesi Tengah) (3,1,Sumatera Utara) (4,2,Gujarat)

我想使用多个表进行搜索。

例如,如果我输入“si”,那么它会给出类似的结果

<小时/>

印度尼西亚 ------- 苏拉威西南部

印度尼西亚 ------- 苏拉威西岛

印度-------------古吉拉特邦

<小时/>

如何在 codeingniter 查询中找到此结果: 我正在尝试这个查询:

SELECT ts.id,ts.state_name,tc.country_name 
FROM STATE ts 
LEFT JOIN COUNTRY tc 
ON tc.id = ts.country_id 
WHERE ts.state_name LIKE '%si%' || tc.country_name LIKE '%si%'

我的查询输出:

<小时/>

苏拉威西南部 ------- 印度尼西亚

苏拉威西登加岛 ------- 印度尼西亚

北苏门答腊岛 ------- 印度尼西亚

<小时/>

最佳答案

使用or_like()/orlike(),更多信息请引用:https://codeigniter.com/userguide2/database/active_record.html

$this->db->select("ts.id,ts.state_name,tc.country_name");
$this->db->from("STATE ts")
$this->db->join("COUNTRY tc","tc.id = ts.country_id","Left");
$this->db->like('ts.state_name', $word);
$this->db->or_like('tc.country_name',$word);

关于php - 具有多个表的搜索结果,如查询 CodeIgniter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49314184/

相关文章:

javascript - Codeigniter 中可扩展表内的表排序问题

php - 如何在 codeigniter 中创建 url/用户名?

php - 将编号转换为重音拼音?

php - Laravel 创建表和关系

codeigniter - 如何将 codeIgniter 与 netbeans 完全集成

mysql - 哪种 MySQL 字段类型适合 '%H:%i'(例如 '01:23' 和 '23:45')?

php - php 中 undefined variable (错误)

PHP-MySQL结果转换为JSON

php - 如何获取mysql中主结果中两个别名表结果的总和?

mysql - 卡在mysql数据库中的多对多关系