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;
}