Как заказать BY на основе двух разных столбцов - PullRequest
7 голосов
/ 15 сентября 2009

У меня есть таблица с 5 столбцами. Когда я перечисляю таблицу, я хочу упорядочить по одному столбцу, чтобы типы были сгруппированы, а затем упорядочить их по алфавиту, чтобы их было легко найти.

Возможно ли ORDER двумя разными столбцами?

Вот мой текущий выбор:

$query_rs_cms = "SELECT * FROM games ORDER BY type ASC";

Я думаю, что-то вроде:

SELECT * 
   FROM games 
ORDER BY type THEN ORDER BY title ASC";

Ответы [ 5 ]

26 голосов
/ 15 сентября 2009

Вы можете указать ORDER BY либо по имени столбца, либо по номеру столбца возврата.

Чтобы вы могли сделать:

SELECT * FROM games ORDER BY Type, Title

Или что-то вроде:

SELECT Type, Title, Column1, Column2 FROM games ORDER BY 1, 2

Вы также можете делать восходящие и нисходящие. Поэтому, если вы хотите ввести Descending, а Title Ascending:

SELECT * FROM games ORDER BY Type DESC, Title ASC
13 голосов
/ 15 сентября 2009
SELECT * FROM games ORDER BY type, title
12 голосов
/ 15 сентября 2009

ORDER BY type, title

Вы можете сделать что-то вроде

ORDER BY type DESC, title ASC

тоже, если нужно.

4 голосов
/ 15 сентября 2009

Ваш заказ по может принимать список сортировки через запятую, аналогичный вашему набору результатов. Пример:

select * from games order by type, entered_dt DESC, title ASC
1 голос
/ 15 сентября 2009

Ты выглядишь примерно так:)

select * FROM games ORDER BY type, title  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...