查询仅列出用户的最新记录

query to list only latest record of users

我有一个包含 2 组 table 的数据库,即用户和 Record.so 我想列出特定组中每个用户的最新记录,但结果显示的是最新和我刚刚更新记录的用户的第一条记录是“27/4/300”和“4/5/2108”。'tarikh' 的日期属性在记录 table 中,而 users_id 在用户 table.Do 中有人知道更好的查询以获得我想要的结果吗?

$sql =   "SELECT * from Users, Record 
          WHERE Users.users_id = Record.users_id
          AND Users.group_id='$users_group'
          AND Record.tarikh IN (SELECT max(Record.tarikh) FROM Record
          GROUP BY users_id)";

我正在使用 sql server management studio 17

试试这个。

$sql =   "SELECT * from Users, Record 
          WHERE Users.users_id = Record.users_id
          AND Users.group_id='$users_group'
          AND Record.tarikh = (SELECT max(Record_nested.tarikh) FROM Record as Record_nested 
                                where Record_nested.users_id = Record.users_id)";