我在这里阅读了很多答案,但直到现在没有任何东西可以帮助我。我正在开发一个门票系统,每张门票都有很多更新。SELECT DISTINCT返回比预期更多的行
我有大约2个表格:tb_ticket
和tb_updates
。
我创建了一个SELECT子查询,它花了很长时间(大约25秒)获得大约1000行。现在我将其更改为INNER JOIN
而不是子查询中的许多SELECT
,它非常快(70毫秒),但是现在我获得了重复票据。我想知道如何才能得到最后一行(按时间排序)。
我现在的结果是:
...
67355;69759;"COMPANY X";"2014-08-22 09:40:21";"OPEN";"John";1
67355;69771;"COMPANY X";"2014-08-26 10:40:21";"UPDATE";"John";1
的第一列是票ID,二是更新ID ...我想只能得到每票ID一排,但在这种情况下,DISTINCT不起作用。哪一行应该是?总是最新的,所以在这种情况下,2014-08-26 10:40:21。
更新: 这是一个postgresql数据库。我没有分享我目前的查询,因为它只有葡萄牙语的名字,所以我认为它根本没有帮助。
SOLUTION: Used_By_Already了我的问题的最佳解决方案。
什么是DBMS? – Dimt 2014-08-28 12:29:58
如果您可以给我们您的SQL语句与 – Marco 2014-08-28 12:31:05
一起使用,那么会很有光泽您的表的前缀为'tb_'。出于兴趣,您的存储过程是否为前缀'sp_'? – 2014-08-28 12:31:11