Size: a a a

2020 August 06

4

4unkur in MySQL
Vitaly
"все последние записи" -  это что Вы хотите получить применительно к примеру
в данном примере я ожидаю получить записи с id: 2, 4
источник

V

Vitaly in MySQL
4unkur
в данном примере я ожидаю получить записи с id: 2, 4
и по какому принципе такое Вы получили ? может всё таки 3 и 4 .. вот максимальное время 2020-08-05 16:39:34 первого дня и 2020-08-06 02:56:16 второго .. если я правильно Вас понял
источник

4

4unkur in MySQL
Vitaly
и по какому принципе такое Вы получили ? может всё таки 3 и 4 .. вот максимальное время 2020-08-05 16:39:34 первого дня и 2020-08-06 02:56:16 второго .. если я правильно Вас понял
нужно еще группировать по document_id
источник

V

Vitaly in MySQL
4unkur
нужно еще группировать по document_id
ну тогда вообще 2 3 4 должно выбрать
источник

V

Vitaly in MySQL
4unkur
нужно еще группировать по document_id
такая ситуация у Вас возможна в данных ?
1  1    '2020-08-05 13:27:42'
2  3    '2020-08-05 16:08:56'
3  1    '2020-08-05 16:39:34'
4  1    '2020-08-05 16:39:34'
5  1    '2020-08-06 02:56:16'
источник

4

4unkur in MySQL
Vitaly
такая ситуация у Вас возможна в данных ?
1  1    '2020-08-05 13:27:42'
2  3    '2020-08-05 16:08:56'
3  1    '2020-08-05 16:39:34'
4  1    '2020-08-05 16:39:34'
5  1    '2020-08-06 02:56:16'
да, нужно выбрать самую последнюю + группировать по док_ид
источник

4

4unkur in MySQL
здесь получается: id: 2, 5
источник

4

4unkur in MySQL
4unkur
Скажем есть 3 поля
id
document_id
date_added

записи:

id document_id date_added
1  1    '2020-08-05 13:27:42'
2  3    '2020-08-05 16:08:56'
3  1    '2020-08-05 16:39:34'
4  1    '2020-08-06 02:56:16'

Хочу вытащить все последние записи с группировкой по document_id

select * from table
group by document_id
order by date_added desc

- не работает

select * from (
select * from table order by date_added desc
) t
group by document_id

- тоже не работает
select * from table p1
inner join (
select max(date_added) max_date_added, document_id
from table
group by document_id
) p2
on p1.document_id = p2.document_id
and p1.date_added = p2.max_date_added
order by p1.date_added desc


вот так оказывается…
источник

S

Syntax Highlight Bot in MySQL
4unkur
select * from table p1
inner join (
select max(date_added) max_date_added, document_id
from table
group by document_id
) p2
on p1.document_id = p2.document_id
and p1.date_added = p2.max_date_added
order by p1.date_added desc


вот так оказывается…
источник

V

Vitaly in MySQL
4unkur
здесь получается: id: 2, 5
select * from table where date_added in (select max(date_added) from table group by document_id);
источник

4

4unkur in MySQL
Vitaly
select * from table where date_added in (select max(date_added) from table group by document_id);
очень даже изящно. Спасибо
источник

V

Vitaly in MySQL
4unkur
очень даже изящно. Спасибо
рекомендую http://sqlfiddle.com/ .. сформировали пример, скинули в чат .. через пару минут Вам уже написали запрос
источник

4

4unkur in MySQL
понял.
источник

AT

Arsen Toktarov in MySQL
Переслано от Arsen Toktarov
Всем привет, можете сразу закидывать камнями, но я хотел спросить помощь немного оффтоп.
Можете сделать review моей структуры базы данных для приложения по типу "Борьба умов"?
Просто я немного в ступоре при реализации логической части, и думаю что с базой делаю что-то не так.
источник

AT

Arsen Toktarov in MySQL
Переслано от Arsen Toktarov
источник

AT

Arsen Toktarov in MySQL
Переслано от Arsen Toktarov
источник

V

Vova in MySQL
4unkur
Скажем есть 3 поля
id
document_id
date_added

записи:

id document_id date_added
1  1    '2020-08-05 13:27:42'
2  3    '2020-08-05 16:08:56'
3  1    '2020-08-05 16:39:34'
4  1    '2020-08-06 02:56:16'

Хочу вытащить все последние записи с группировкой по document_id

select * from table
group by document_id
order by date_added desc

- не работает

select * from (
select * from table order by date_added desc
) t
group by document_id

- тоже не работает
select distinct id, document_id, last_value(date_added) over(partition by document_id group by date_added)
источник

DE

Denis Efremov in MySQL
Arsen Toktarov
Переслано от Arsen Toktarov
Во первых таблицы лучше называть во множественном числе
источник

DE

Denis Efremov in MySQL
Категория соединяет вопрос с раундом?
источник

DE

Denis Efremov in MySQL
Arsen Toktarov
Переслано от Arsen Toktarov
Че за борьба умов?
источник