正在获取Codeigniter中带有Where子句的最后一条记录


I have a table like this
id    username        sb
1     user1_0001      1
2     user1_0002      1
3     user1_0003      1
4     user2_0001      2 
5     user2_0002      2
6     user2_0003      2
7     user3_0001      3
8     user3_0002      3
9     user3_0003      3
10    user3_0004      3

我如何查询,例如我想获得sb=1的最后一条记录,输出应该是user1_0003?

假设表名为"table1"。在内部查询中,它返回sb=1的id的最大值,然后在外部查询中,我们选择与返回值匹配的记录。

SELECT * FROM table1 WHERE id = (SELECT MAX(id) FROM table1 WHERE sb = 1);

因为我在Codeigniter工作。

这是我的解决方案,感谢chandimark

$query = $this->db->query("SELECT * FROM user WHERE id = (SELECT MAX(id) FROM user WHERE sb = '".$sb_id."')");
if ($query->num_rows()== 1)
{
    $row = $query->row();
    echo $row->username;
}

最新更新