Sql 现有结果集与数据库的同步

Sql 现有结果集与数据库的同步,sql,database,postgresql,Sql,Database,Postgresql,我有一个服务器程序,可以与数据库和连接到服务器的N个客户端一起工作。在数据库中,我有一个约10000人的人员表。现在,在X客户端上执行以下sql查询: SELECT * FROM persons WHERE age >18 AND sex=1 ORDER BY age. 向X客户显示2500人的订单列表。若服务器端有变化,那个么显示给X客户机的人员列表必须以最有效的方式更新 现在,在服务器端,id=120的人被某个客户端更新。更新后我们不知道他的年龄和性别。因此有两种情况: 其年龄>18

我有一个服务器程序,可以与数据库和连接到服务器的N个客户端一起工作。在数据库中,我有一个约10000人的人员表。现在,在X客户端上执行以下sql查询:

SELECT * FROM persons WHERE age >18 AND sex=1 ORDER BY age.
向X客户显示2500人的订单列表。若服务器端有变化,那个么显示给X客户机的人员列表必须以最有效的方式更新

现在,在服务器端,id=120的人被某个客户端更新。更新后我们不知道他的年龄和性别。因此有两种情况:

  • 其年龄>18岁,性别=1,且必须在X客户选定的人员中出现

  • 在对person的表进行任何更新/插入之后,为什么不在X客户端上再次运行sql查询?@Utsav好问题-因为客户端不会加载WHERE/ORDER by子句中的所有数据。此外,服务器端的数据太多。在这种情况下,每次运行sql查询时,可能您可以首先获取2500条记录中的最后一条记录。现在,如果服务器端有一条新记录,如果年龄>18,性别=1,则将年龄与上一条记录进行比较。如果更大,则跳过或再次运行sql查询进行调整。