0
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?

4

2 回答 2

2

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

SELECT * FROM table1 WHERE id = (SELECT MAX(id) FROM table1 WHERE sb = 1);
于 2013-02-23T08:58:33.287 回答
0

因为我在 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;
}
于 2013-02-25T02:59:42.380 回答