|
|
|
| Таблица имеет три столбца - id, clik и prod. При этом требуется такая сортировка:
- сортируем по столбцу prod в порядке убывания, используя лишь отличные от нуля значения;
- оставшиеся строки сортируем в порядке убывания по столбцу clik.
Я вот думаю: можно разделить таблицу на две части с учетом критерия значимости записей в этих столбцах, затем отсортировать их по отдельности и перенести в новую таблицу (в очищенную таблицу).
А может быть это возможно осуществить проще, одним запросом? | |
|
|
|
|
|
|
|
для: Владимир55
(26.02.2009 в 12:00)
| | ничего не понял..
может так
SELECT
*
FROM
`tbl`
WHERE
`prod` > 0
ORDER BY
`prod` DESC,
`clik` DESC
|
что значит "оставшиеся строки"? те которые равны 0 что лэ?) | |
|
|
|
|
|
|
|
для: а-я
(26.02.2009 в 12:26)
| | "ничего не понял.."
Попробую на примере.
Пусть содержимое таблицы такое (столбцы слева направо id, clik и prod через разделитель "-" для наглядности)
1 - 55 - 15
2 - 45 - 22
3 - 27 - 0
4 - 22 - 0
5 - 47 - 0
А надо, что бы получилось после сортировки (привожу только столбцы clik и prod):
45 - 22
55 - 15
47 - 0
27 - 0
22 - 0 | |
|
|
|
|
|
|
|
для: Владимир55
(26.02.2009 в 12:34)
| | может так тогда
SELECT
*
FROM
`tbl`
ORDER BY
(`prod` <> 0) DESC,
`prod` DESC,
`clik` DESC
|
хотя из примера можно и просто так
SELECT
*
FROM
`tbl`
ORDER BY
`prod` DESC,
`clik` DESC
|
0 меньше, он и будет внизу | |
|
|
|
|
|
|
|
для: а-я
(26.02.2009 в 12:37)
| | Сейчас попробую.
А попутно хочу спросить.
Никак не могу понять, почему `tbl` , `prod` и `clik` в кавычках?
В книге я на сей счет ничего не нашел, а в примерах на форуме встречаются и закавыченные записи, и обычные.
Есть на сей счет какое-то правило? | |
|
|
|
|
|
|
|
для: Владимир55
(26.02.2009 в 12:42)
| | =) попробуйте поработать в таблице с полями
например from, select, where | |
|
|
|
|
|
|
|
для: Владимир55
(26.02.2009 в 12:42)
| | Чтобы избежать конфликтов mysql при работе с названиями столбцов, если они, вдруг, совпадут с зарезервированными словами | |
|
|
|
|
|
|
|
для: mihdan
(26.02.2009 в 14:12)
| | То есть, заключение в кавычки не является обязательным?
И в случаях, когда имена являются заведомо уникальными, в частности содержащие "_", этого можно не делать? | |
|
|
|
|
|
|
|
для: Владимир55
(26.02.2009 в 14:28)
| | Можно.
Просто если кому-то трудно помнить все зарезервированные слова (а их около сотни) и лень лазить в справочник, он предпочитает застраховаться от коллизий.
Если же запрос динамически составляется скриптом - это вообще обычная практика. | |
|
|
|
|
|
|
|
для: Владимир55
(26.02.2009 в 14:28)
| | >И в случаях, когда имена являются заведомо уникальными, в частности содержащие "_", этого можно не делать?
это седня они уникальны, а завтра?
Вас чем то пугают апострофы? | |
|
|
|
|
|
|
|
для: а-я
(26.02.2009 в 14:39)
| | "Вас чем то пугают апострофы?"
Ничуть. Просто стремлюсь к единообразию. | |
|
|
|