Ответ 1
Если вы имеете в виду запись, которая имеет последнее значение временной метки
последняя запись
my_query = client.query("
SELECT timestamp,value,card from my_table
order by timestamp desc limit 1");
Я использую Postgres и не могу получить последнюю запись моей таблицы:
my_query = client.query("SELECT timestamp,value,card from my_table");
Как мне сделать, что известно, что временная метка является уникальным идентификатором записи?
Если вы имеете в виду запись, которая имеет последнее значение временной метки
последняя запись
my_query = client.query("
SELECT timestamp,value,card from my_table
order by timestamp desc limit 1");
вы можете использовать
SELECT timestamp, value, card
FROM my_table
ORDER BY timestamp DESC
LIMIT 1
Предполагая, что вы хотите также сортировать по timestamp
?
Если вы принимаете подсказку, создайте идентификатор в этой таблице, как серийный. По умолчанию это поле будет:
nextval('table_name_field_seq'::regclass).
Итак, вы используете запрос для вызова последнего регистра. Используя ваш пример:
pg_query($connection, "SELECT currval('table_name_field_seq') AS id;
Я надеюсь, что этот совет поможет вам.
Последняя вставленная запись может быть запрошена с использованием этого предположения, что в качестве первичного ключа у вас есть "id":
SELECT timestamp,value,card FROM my_table WHERE id=(select max(id) from my_table)
Предполагая, что каждая новая вставленная строка будет использовать наивысшее целочисленное значение для идентификатора таблицы.