Как выбрать последнее значение из запроса? - PullRequest
0 голосов
/ 30 октября 2018

У меня есть эта таблица:

enter image description here

и мне нужно получить последнее записанное значение, то есть последний идентификатор таблицы

Как мне это получить?

Ответы [ 3 ]

0 голосов
/ 30 октября 2018

В MySQL или Postgres вы можете сделать:

select t.*
from t
order by t.create_date desc
limit 1;

Предполагается, что вам нужна одна строка, даже если в таблице несколько строк имеют одинаковый максимум create_date.

Обычно id увеличивается вместе с create_date, так что это, вероятно, делает то, что вы хотите:

select max(id)
from t;
0 голосов
/ 30 октября 2018

Вы можете использовать Juery Ajax, чтобы получить последний вставленный идентификатор в таблице MySQL нравится запрос как

$sql="INSERT INTO users(firstname, lastname, email) VALUES ('khan', 'shan', 
'john@example.com')"

if($conn->query($sql))  // $conn as connection link
$last_id = $conn->insert_id; //will return last id
0 голосов
/ 30 октября 2018

Мы можем найти последнюю запись в вашей таблице, используя коррелированный подзапрос:

SELECT *
FROM yourTable
WHERE create_date = (SELECT MAX(create_date) FROM yourTable);

Это вернет несколько записей, если две или более записей связаны с самой последней create_date.

Если вы используете Postgres или MySQL версии 8 или новее, то мы также можем использовать аналитические функции здесь:

SELECT *
FROM
(
    SELECT *, ROW_NUMBER() OVER (ORDER BY create_date) DESC rn
    FROM yourTable
) t
WHERE rn = 1;

Мы также можем заменить ROW_NUMBER на RANK в случае, если мы также хотим получить связи здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...