Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / WHERE id IN в указанном порядке / 4 сообщений из 4, страница 1 из 1
01.06.2015, 19:35:35
    #38973749
vczm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WHERE id IN в указанном порядке
Здравствуйте

У меня имеется следующая таблица

select * from links;
+-----+----------------------------+
| id | link |
+-----+----------------------------+
| 1 | /catalog/product-1 |
| 2 | /catalog/product-2 |
| 3 | /catalog/product-3 |
| 4 | /catalog/product-4 |
| 5 | /catalog/product-5 |
+-----+----------------------------+

Какой необходимо написать запрос, чтобы выбрать за один раз записи со следующими id и обязательно в следующей последовательности - id: 4, 2, 5

Почему этот запрос:
SELECT * FROM `links` WHERE `id` IN( 4, 2, 5 )
возвращает отсортированные по id записи (2, 4, 5) ?


Прошу помочь разобраться в данной теме.
...
Рейтинг: 0 / 0
01.06.2015, 20:18:28
    #38973768
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WHERE id IN в указанном порядке
...
Рейтинг: 0 / 0
01.06.2015, 20:53:23
    #38973788
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WHERE id IN в указанном порядке
vczm,

добавь order by.
...
Рейтинг: 0 / 0
01.06.2015, 21:17:14
    #38973801
vczm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WHERE id IN в указанном порядке
miksoft, спасибо.

Решением будет следующий запрос:
SELECT * FROM `links` WHERE `id` IN( 4, 2, 5 ) ORDER BY FIELD(id, 4, 2, 5 )
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / WHERE id IN в указанном порядке / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]