sqlite - Как выбрать отдельную строку по дате? - PullRequest
0 голосов
/ 18 июня 2020

У меня есть следующая схема:

CREATE TABLE fruit ( name TEXT, date_collected TEXT);

Данные:

INSERT INTO fruit (name, date_collected) VALUES ('red apples', '2020-02-04 08:04:37+00:00');
INSERT INTO fruit (name, date_collected) VALUES ('red apples', '2020-06-01 04:36:09+00:00');
INSERT INTO fruit (name, date_collected) VALUES ('mangoes', '2020-03-18 19:14:24+00:00');
INSERT INTO fruit (name, date_collected) VALUES ('mangoes', '2017-04-20 19:14:24+00:00');
INSERT INTO fruit (name, date_collected) VALUES ('watermelon', '2019-12-20 14:29:02+00:00');

Как выбрать вывод, который показывает только самые новые записи отдельных фруктов по дате?

например,

red apples | 2020-06-01 04:36:09+00:00
mangoes | 2020-03-18 19:14:24+00:00
watermelon | 2019-12-20 14:29:02+00:00

Ответы [ 2 ]

1 голос
/ 18 июня 2020

Это должно сработать для вас:

select
    Name
    ,max(convert(date,date_collected)) [MostRecentDate]

from
    fruit

group by
    Name

order by
    [MostRecentDate] desc
1 голос
/ 18 июня 2020

Если вам просто нужна максимальная дата, используйте агрегирование:

select name, max(date_collected)
from fruit
group by name;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...