我需要从带有时间戳字段的表中获取唯一行,该字段不是唯一的。
我尝试使用不同的时间戳记字段来运行。它给出了完美的结果,但我错过了时间戳。时间戳对我来说是必需的。
这给出正确的结果,但是我错过了tstamp字段。
SELECT distinct person_id, status, type, strowner
FROM tbl_wa_requests_h
WHERE (person_id = 1128)
这有tstamp字段,但结果不是我需要的。
SELECT person_id, status, type, strowner, db_tstamp
FROM tbl_wa_requests_h
WHERE (person_id = 1128)
预期结果
personid - status - type - email - tstamp
1128 - 0 - t1 - wandam@gmail.com - 2019-08-18 11:37:15.6893649
1128 - 1 - t2 - stever@gmail.com - 2019-08-18 11:41:04.8658361
实际结果
personid - status - type - email - tstamp
1128 - 0 - t1 - wandam@gmail.com - 2019-08-18 11:37:15.6883648
1128 - 0 - t1 - wandam@gmail.com - 2019-08-18 11:37:15.6883648
1128 - 0 - t1 - wandam@gmail.com - 2019-08-18 11:37:15.6883648
1128 - 0 - t1 - wandam@gmail.com - 2019-08-18 11:37:15.6893649
1128 - 0 - t1 - wandam@gmail.com - 2019-08-18 11:37:15.6893649
1128 - 1 - t2 - stever@gmail.com - 2019-08-18 11:41:04.8658361
1128 - 1 - t2 - stever@gmail.com - 2019-08-18 11:41:04.9328798
1128 - 1 - t2 - stever@gmail.com - 2019-08-18 11:41:05.0309459
1128 - 1 - t2 - stever@gmail.com - 2019-08-18 11:41:04.9278764
1128 - 1 - t2 - stever@gmail.com - 2019-08-18 11:41:04.9278764
答案 0 :(得分:1)
您可以使用组子句
代码查询应如下所示:
SELECT person_id, status, type, strowner, max(db_tstamp)
FROM tbl_wa_requests_h
WHERE (person_id = 1128)
GROUP BY person_id, status, type, strowner