Codeigniter从数据库中获取所有重复记录并在视图中显示

时间:2017-03-11 13:46:52

标签: php mysql codeigniter

我有候选人的主记录,护照号码可以说(表1),另一张记录有候​​选人护照号码(表2)。现在我想查找并显示所有重复的护照号码及其与表1中表2的护照号码相匹配的数据

例如:

    table1 :
    id | name | passport_number | test_date
    1 | jane doe | a123456 | 1-Jan-2017
    2 | jane doe | a123456 | 2-Jan-2017
    3 | jane doe | a123456 | 3-Jan-2017
    4 | doe jane | b123456 | 1-Jan-2017
    5 | doe jane | b123456 | 2-Jan-2017
    6 | name | d123456 | 5-Jan-2017

    table2:
    id | passport_number | test_date
    1 |  a123456 | 1-Jan-2017
    2 |  c123456 | 4-Jan-2017
    3 |  a123456 | 2-Jan-2017
    4 |  b123456 | 1-Jan-2017
    5 |  b123456 | 2-Jan-2017

Results should be:
 id | name | passport_number | test_date
    1 | jane doe | a123456 | 1-Jan-2017
    2 | jane doe | a123456 | 2-Jan-2017
    3 | jane doe | a123456 | 3-Jan-2017
    4 | doe jane | b123456 | 1-Jan-2017
    5 | doe jane | b123456 | 2-Jan-2017

现在我想从table2获取passport_numbers的所有数据(仅当候选人出现在table1中的两个测试日期时),并将其与table1 passport_number进行比较,并查看此候选人在之前日期进行测试的次数。它应该显示护照的所有重复条目,而不仅仅是group_by或count的1个条目。

2 个答案:

答案 0 :(得分:0)

您的查询可能是这样的

$this->db->select('*');
$this->db->from('table1');
$this->db->join('table2', 'table1.passport_number  = table2.passport_number ', 'left'); 
$query = $this->db->get();
return $query->result();

答案 1 :(得分:0)

echo '<ul class="ent">
            <li><a href="#">Entrar</a></li>
            <li><a href="#">Registrar</a></li>'
        . do_action( 'wooc_save_extra_register_fields' ) .
        '</ul>';