Как получить максимальный идентификатор из таблицы? - PullRequest
0 голосов
/ 29 апреля 2019

У меня есть таблица order_status_history, в которой хранятся подробности истории состояния.Структура таблицы и данные отображаются в виде изображения и в текстовом формате.Идентификатор здесь - PK,Требуемый образец вывода на желтом цветном фоне на изображении, а также ниже в текстовом формате.

id  date        status  order_id    updated_by
1   11/12/2018  WAI         1       12365
4   11/12/2018  WAI         3       12365
9   11/12/2018  WAI         4       12365
10  11/12/2018  WAI         5       12365
15  11/13/2018  WAI         6       12365

Ответы [ 2 ]

1 голос
/ 29 апреля 2019

Вы можете объединить производную таблицу, которая получает максимальный идентификатор со статусом 'WAI' на заказ в агрегации.

SELECT t1.*
       FROM elbat t1
            INNER JOIN (SELECT max(t2.id) id
                               FROM elbat t2
                               WHERE t2.status = 'WAI'
                               GROUP BY t2.order_id) x
                       ON x.id = t1.id;
0 голосов
/ 29 апреля 2019

Вы можете использовать коррелированный подзапрос:

select t.*
from table t
where t.id = (select max(t1.id) from table t1 where t1.order_id = t.order_id and t1.status = 'WAI');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...