查找最后插入的记录 - Postgresql
Find last inserted record - Postgresql
数据库结构不是最优化的,所以这是为了充分利用当前的条件。
我只想使用字符字段作为id来查找最后插入的记录
CREATE TABLE find
(id varchar(8),date date);
INSERT INTO find
(id,date)
VALUES
('X','2017-10-01'),
('Y','2017-10-01'),
('A','2017-10-01');
我想找到最后一条记录'A'
SELECT max(id)
FROM find
使用共同最大值得到 'Y' 作为答案
我要找的是像
这样的神奇隐藏交易ID
SELECT max(transaction_id)
FROM find
三个问题:
- 是否可以找到没有时间戳的最后一条记录 'A'?
- 时间戳 "cost" 不仅仅是一个简单的日期吗?
- 其他解决方案?
Fiddle: http://sqlfiddle.com/#!15/60b68/1
TIA,
添加一个 auto_increment 列并获取它的 MAX()。它将显示正确的结果
时间戳比较时间部分也比简单的日期有用
你可以做 ORDER BY your_date_time_field DESC
和 select 1 条记录,但可能得不到正确的结果。
数据库结构不是最优化的,所以这是为了充分利用当前的条件。
我只想使用字符字段作为id来查找最后插入的记录
CREATE TABLE find
(id varchar(8),date date);
INSERT INTO find
(id,date)
VALUES
('X','2017-10-01'),
('Y','2017-10-01'),
('A','2017-10-01');
我想找到最后一条记录'A'
SELECT max(id)
FROM find
使用共同最大值得到 'Y' 作为答案
我要找的是像
这样的神奇隐藏交易IDSELECT max(transaction_id)
FROM find
三个问题:
- 是否可以找到没有时间戳的最后一条记录 'A'?
- 时间戳 "cost" 不仅仅是一个简单的日期吗?
- 其他解决方案?
Fiddle: http://sqlfiddle.com/#!15/60b68/1
TIA,
添加一个 auto_increment 列并获取它的 MAX()。它将显示正确的结果
时间戳比较时间部分也比简单的日期有用
你可以做
ORDER BY your_date_time_field DESC
和 select 1 条记录,但可能得不到正确的结果。