我有一张表,用于存储“出价”。我需要获得每组金额最高的行(PlayerID)。但是,如果由于“出价”同时出现多行,我需要获得最早的行(BidDate)。
我的表和测试日期如下所示 (DB-Fiddle):
CREATE TABLE bid(
BidID integer PRIMARY KEY,PlayerID integer,Amount integer,BidDate text,User integer
);
INSERT INTO bid VALUES(1,1,1500000,NULL,0);
INSERT INTO bid VALUES(2,2,5875000,0);
INSERT INTO bid VALUES(3,'1625513541.2904',505414867524517888);
INSERT INTO bid VALUES(4,'1625513541.33661',840702168863735889);
我已经尝试了不同的查询。但是如果我得到了 max(amount) 我仍然剩下日期。 您还会看到我用于测试 Min(NULLIF(BidDate)) 的 Amounts of Null 或 0,但没有帮助。
我期望(想要实现)的结果是这种情况:
BidID | PlayerID | Amount | BidDate | User |
------|----------|----------|-----------------|--------------------|
3 | 1 | 1500000 | 1625513541.2904 | 505414867524517888 |
2 | 2 | 5875000 | 0 or Empty | 0 |
感谢任何建议或帮助。