Как правильно сформировать запрос к базе данных?

Статус
В этой теме нельзя размещать новые ответы.

dandandan

Мой дом здесь!
Регистрация
7 Авг 2008
Сообщения
1.036
Реакции
293
есть таблица:
id | name

как выбрать все элементы из таблицы и сделать так, чтобы русские строки (в ячейке name) были упорядочены по ASC, а иностранные по DESC
поле name в каждой ячейке содержит либо русское название, либо иностраное, смешения букв разных алфавитов нету.
 
например если в name буквы из русского алфавита то записать name в колонку ru если нет то null, дальше сортировать по этой колонке

русские name после иностранных:
Код:
SELECT *, IF(name REGEXP '^[абвгдеёжзийклмнопрстуфхцчшщъыьэюя]', name, NULL) ru
FROM test_table
ORDER BY ru ASC, name DESC
русские name перед иностранными:
Код:
SELECT *, IF(name REGEXP '^[абвгдеёжзийклмнопрстуфхцчшщъыьэюя]', name, NULL) ru
FROM test_table
ORDER BY ru is null ASC, ru ASC, name DESC
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху