SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 18.03.2010 21:21:42

eshka
Участник
Зарегистрирован: 18.03.2010
Сообщений: 2

Возможности сортировки MySQL

Здравствуйте, есть база со странами (Азейбаржан, Армения....Россия...Якутия). Все страны хранятся в базе. Можно каким то образом при помощи сортировки или какого либо запроса вывести вначале РОССИЯ, а потом все остальные по алфавиту?

Неактивен

 

#2 18.03.2010 22:01:58

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Возможности сортировки MySQL

Я всегда думал, что Якутия — это не страна smile

Можно сделать столбец с номерами сортировки, можно сделать отдельный
специальный IF, который будет возвращать единичку на России и двоечку
на всех остальных странах, а можно не выпендриваться и добавить в коде wink

Неактивен

 

#3 18.03.2010 22:17:49

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Возможности сортировки MySQL

Ещё можно так (если у вас нет страны одноименной 'А' wink ):

select t.* from `tablename` t order by case country when 'Россия' then 'А' else country end;

Неактивен

 

#4 18.03.2010 23:06:56

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Возможности сортировки MySQL

Подозреваю, что страна '' (да, пустая строка) будет первой. Так что она будет
даже раньше «А» wink Но только этот способ не будет использовать индекс, так
что просто добавить Россию в начале програмным способом, кажется, лучше.

Неактивен

 

#5 18.03.2010 23:11:10

eshka
Участник
Зарегистрирован: 18.03.2010
Сообщений: 2

Re: Возможности сортировки MySQL

спасибо, сделал именно программным способом

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson