Двойная сортировка до и после выборки Select.

koreshs

Новичок
Двойная сортировка до и после выборки Select.

Как сделать повторную сортировку в том же запросе.
SELECT * FROM table WHERE x=5 ORDER BY dates Desc LIMIT 5,5;
Как отобранные строки сортировать в этом же запросе но в другом порядке?

В инструкциях максимум что указана так это оптимизация. а об очередностях проводимых процедур ничего.
проблема в том. что нужно отсортировать, потом выбрать при х=5, потом из этого выбрать LIMIT 5,5
а потом содержимое отсортировать в другом порядке Cena.

(PHP 2.5.6)

И еще вопрос, как при этом запросе вернуть каждую пятую строчку ?
SELECT * FROM table WHERE x=5 ORDER BY dates Desc (LIMIT 5,1), (LIMIT 10,1), (LIMIT 15,1)...;
 

x-yuri

Новичок
да, я чего-то решил, что нужны оба варианта сортировки. Если нужен окончательный результат, то лучше без временных таблиц
 

zerkms

TDD infected
Команда форума
никакой разницы :) разве что в выборке не будет 1 лишнего столбца
 

koreshs

Новичок
Спасибо за каждый пятый ответ. :)
Честно как на клинопись смотрю. надеюсь я так же буду составлять.

А подскажите пожалуйста как составить вложенную функцию...
 

x-yuri

Новичок
вот давай ты перестанешь как на клинопись смотреть (т.е. разберешься с теми запросами) или ты по каждому запросу будешь в форум обращаться

-~{}~ 14.01.09 05:22:

спроси, что непонятно
 

koreshs

Новичок
Да вот и сижу по ночам и форумы терроризирую. прикольно.
.
Подскажите пожалуйста синтаксис объединения запросов.
------------------------ На сайте в разделе справки нашел примеры объединения
SELECT * FROM table1 WHERE id NOT IN (SELECT id FROM table2);
SELECT * FROM table1 WHERE NOT EXISTS (SELECT id FROM table2 WHERE table1.id=table2.id);
это единственное объединение при помощи NOT IN и NOT EXISTS. и вообще что это подразумевается
 

x-yuri

Новичок
Подскажите пожалуйста синтаксис объединения запросов.
------------------------ На сайте в разделе справки нашел примеры объединения
SELECT * FROM table1 WHERE id NOT IN (SELECT id FROM table2);
SELECT * FROM table1 WHERE NOT EXISTS (SELECT id FROM table2 WHERE table1.id=table2.id);
это единственное объединение при помощи NOT IN и NOT EXISTS. и вообще что это подразумевается
это не объединение запросов, это вложенные и соотнесенные подзапросы
 

koreshs

Новичок
SELECT * FROM
(
SELECT
*
FROM
bases.test
WHERE
c = 2
ORDER BY b ASC
LIMIT 10
)
as b
order by a ASC;

Всем спасибо должно быть так. Всем себе и вам благодарен.
 

Фанат

oncle terrible
Команда форума
интересно, что лино мне бы такой вопрос вообще в голову не пришел бы - я отсортировал бы скриптом.
 

koreshs

Новичок
назнаю такого скрипта.
а вообще выбираться будут по 50-100 записей.
а что за функция в скрипте?
 

x-yuri

Новичок
назнаю такого скрипта.
речь не о скрипте, а о функциях сортировки пхп

p.s. мне интереснее, что за задача, зачем такой запрос понадобился

-~{}~ 20.01.09 20:46:

а вообще выбираться будут по 50-100 записей.
у тебя ж limit 10 стоит
 

koreshs

Новичок
10 это для тестовой таблицы. там три колонки A B С
А на ПХП хочу сделать сайт объявлений. где будет выподающие меню штук пять и выборка по станциям метро. (190стан.)
а вообще я зеленоват пока. поэтому начитался всякого что бывают тормоза изза не правильного написанного кода.
Так что за функция на ПХП?
 
Сверху