|
|
|
GROUP и ORDER
|
|||
|---|---|---|---|
|
#18+
Добрый день, такая проблемка: Есть таблица объектов obj ( id , title), таблица картинок img ( id_img , path) и таблица связка obj_img ( id_obj , id_img , onum), где onum - порядковый номер картинки в объекте. Необходимо вытащить по одной, первой (!!!) картинке из каждого объекта. SELECT * FROM obj_img INNER JOIN img ON .. GROUP BY obj_img.id_img ORDER BY onum Данный запрос неверен, т.к. сортировка влияет лишь на конечный результат. Вопрос: можно ли каким-то образом влиять на GROUP, чтобы добиться желаемого результата одним запросом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2005, 16:07 |
|
||
|
GROUP и ORDER
|
|||
|---|---|---|---|
|
#18+
Если onum везде содержит корректное значение, то группировка тебе вообще не нужна, просто указывает во where условие onum=1. Если в onum не строгие значения, то я так понимаю, что нужная картинка с минимальным onum, тогда наджо использовать вложенный запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2005, 16:30 |
|
||
|
GROUP и ORDER
|
|||
|---|---|---|---|
|
#18+
Второе - когда onum содержит минимальное значение. Версия MySQL на сервере 4.0.17, вложенные запросы, как я понимаю, еще не поддерживаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2005, 16:35 |
|
||
|
GROUP и ORDER
|
|||
|---|---|---|---|
|
#18+
Тогда попробуй так (если onum в пределах объекта уникален): select id_obj, min(onum) as onum from obj_img group by id_obj; Получишь список объектов и минимальный onum, если он вообще есть. Затем на фетчах будешь вытаскивать id_img по id_obj и onum... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2005, 18:19 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1854121]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 485ms |

| 0 / 0 |
