![]() |
|
Модераторы: LSD |
![]()
|
|
| Gunslinger |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: нет Всего: 3 |
а order by - в конце, после условия. Хочу понять, есть ли какая логика, зная которую, легко запомнить, что где ставить.
Distinct - отбрасывать дубликаты, Order by - фильтр на убывание по алфавитному порядку. Может я не понимаю, и отбрасывание дубликатов - это не фильтрация, а фильтры всегда ставятся только в конце запроса (и почему только если есть условие?). |
|||
|
||||
| ТоляМБА |
|
|||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 5 Всего: 252 |
Order by - это сортировка, а ни какой не фильтр.
Сортировка по возрастанию: Order by Field1 или Order by Field1 ASC Сортировка по убыванию: Order by Field1 DESC. ---------------------------- Такую последовательность трудно запомнить? Select From Join Where Group by Order by ЗЫ. Я вообще не понял о чём вопрос |
|||
|
||||
| Gunslinger |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: нет Всего: 3 |
Значит эта последовательность - вроде скелета во всевозможных запросах. А слова вроде Distinct, Desc, ASC - это уточнения к этим словам? Не встречал нигде, где логически описывается, почему расположение Distinct и др. так-то. Нечто вроде: Order by и Group by ставятся в конце селекта, потому что сначала происходит чтение всех нужных записей, а затем только с этими записями проделываем "косметические" операции - т.е. чтобы сделать просмотр полученной инфы удобнее. |
|||
|
||||
| ТоляМБА |
|
|||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 5 Всего: 252 |
||||
|
||||
| Zloxa |
|
||||||||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 11 Всего: 161 |
Аргумент
Предложение
Нет не потому. SQL декларативный язык а не итерационный. С помощью SQL мы описываем какие данные мы хотим получить и в каком виде они должны быть представлены. Какие механизмы должны быть использованы для получения результата и в какой последовательности эти механизмы должны быть применены - за рамками семантики SQL. Разработчики языка, видимо, сочли что оператор distinct более наглядно отражает свою суть будучи в селект листе а не после order by предложения,и, имхо, они не ошиблись. -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
||||||||
|
|||||||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
HAVING забыл -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Gunslinger |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: нет Всего: 3 |
уже логика. В SQL'е аргументы указывают, как должно работать предложение. Т.е. прямая аналогия с ЯП. Напр., distinct в select-е указывает, чтобы тот не выбирал дубликаты; desc и asc указывают, как должен сработать order by; и т.п.? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 13 Всего: 454 |
Ну даже в обычной речи "отобрать уникальные записи из таблицы по условию с сортировкой" звучит разумнее, чем "отобрать записи из таблицы по условию с сортировкой уникальные" -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 11 Всего: 161 |
distinct,asc,desc - не аргументы
Это ключевые слова предложений (select и order by) оператора select. -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
![]()
|
| Правила форума "Общие вопросы по базам данных" | |
|
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |