У меня одна таблица продуктов:
| id | code | active
--------------------------------
| 1 | 1111 | 0 |
| 2 | 1111 | 0 |
| 3 | 1111 | 1 |
| 4 | 2222 | 0 |
| 5 | 2222 | 1 |
| 6 | 2222 | 0 |
| 7 | 3333 | 0 |
| 8 | 3333 | 0 |
| 9 | 3333 | 0 |
--------------------------------
И я хочу выбрать одну запись из каждого кода. Но если active = 1, то запись имеет приоритет. Итак, я хочу увидеть:
| id | code | active
--------------------------------
| 3 | 1111 | 1 |
| 5 | 2222 | 1 |
| 7 | 3333 | 0 |
--------------------------------
Я пытался:
select * from (Select * from products order by active desc) as query group by code
Но я не работаю и покажу:
| id | code | active
--------------------------------
| 1 | 1111 | 0 |
| 4 | 2222 | 0 |
| 7 | 3333 | 0 |
--------------------------------
Кто-нибудь может мне помочь? Спасибо!