записи по с уникальным кодом
перечень кодов заранее определен
сделал так:
select *
from (select `code`, `value`
from `foo`
WHERE code = 'abc'
order by `created_at` DESC
limit 1) as c1
UNION ALL
(SELECT `code`, `value`
from `foo`
WHERE code = 'abb'
order by `created_at` DESC
limit 1)
UNION ALL
(SELECT `code`, `value`
from `foo`
WHERE code = 'bca'
order by `created_at` DESC
limit 1)
UNION ALL
(SELECT `code`, `value`
from `foo`
WHERE code = 'aca'
order by `created_at` DESC
limit 1);
в explain вижу
https://drive.google.com/file/d/1ecNTk9teRfDfLnB_osjJvCvrqSIMlgGZ/view?usp=drivesdk
т.е. так себе запрос
про оператор OR не слышали?
А почему через code in ('abc', ...) нельзя?
потому что, код bca, например, может быть вставлен неделю назад тогда лимит не сработает нормально select DISTINCT `code`, `value` from `foo` where code IN('abc', 'abb', 'bca', 'aca) order by `created_at` DESC limit 4; выберет 3 записи
Попробуй тогда select * from( select distinct ... ) order by creared_at
Обсуждают сегодня