Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > Выбрать из БД сортируя по строковому параметру


Автор: kolombo1 24.8.2009, 12:41
Есть массив, вроде такого:
Код

$application_rank = array (
1 => 'Master',
2 => '2 eng',
3 => '3 eng' // и т. д.
)


Есть таблица вроде:
Код

CREATE TABLE applications (
rank CHAR(50)
/* другие параметры */
);


Мне нужно выбрать записи из БД, сортируя согласно массиву. Т. е. те, у кого rank='Master' сначала, потом те, у кого rank='2 eng' и т. д.
Придумал такое решение: создать поле rank_id, и заполнить его так, чтобы $application_rank[rank_id] = rank, а потом выбрать сортируя по rank_id. Но оно мне кажется неэффективным.
Есть ли вариант лучше?

Автор: bars80080 24.8.2009, 13:29
почему? достаточно эффективно. делаешь один раз, а потом не страдаешь какими-то хитронавороченными запросами при каждой выборке. достаточно будет написать order by rank_id

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)