|
0 / 0 / 0
Регистрация: 10.11.2010
Сообщений: 18
|
|||||||||||
Разница между * и all18.06.2012, 19:17. Показов 2299. Ответов 9
Метки нет (Все метки)
В чем разница между
Именно в пределах данной конструкции. Почему, если я перечислю все поля после all - это все равно не одно и то же?
0
|
|||||||||||
| 18.06.2012, 19:17 | |
|
Ответы с готовыми решениями:
9
Какая разница между различными сокетами (например, между 775 и 1155)? Разница между ! и ~
|
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
|
| 18.06.2012, 21:58 | |
|
ALL не имеет отношения к списку полей, а указывает на то, что в выборке могут появиться повторяющиеся строки. ALL используется по умолчанию, если только нет DISTINCT (выборка уникальных строк)
0
|
|
|
0 / 0 / 0
Регистрация: 10.11.2010
Сообщений: 18
|
|
| 18.06.2012, 22:44 [ТС] | |
|
Т.е. Вы хотите сказать, что после выполнения со * - результат будет аналогичным distinct?
0
|
|
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
|
| 18.06.2012, 22:58 | |
|
ALL и distinct не имеют ни какого отношения к списку полей - хоть *, хоть перечень
ALL - выбор указанных полей без контроля уникальности distinct - выбор указанных полей с контролем уникальности (если указанный набор полей повторяется, то выбирается только одна запись из группы таких записей)
0
|
|
|
0 / 0 / 0
Регистрация: 10.11.2010
Сообщений: 18
|
|
| 18.06.2012, 23:05 [ТС] | |
|
Т.е. разницы никакой?
0
|
|
|
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
|
|
| 18.06.2012, 23:39 | |
|
Смотри #2 и #4 и думай. А разница простая * - все поля, <список_полей> - только поля из списка
0
|
|
|
0 / 0 / 0
Регистрация: 10.11.2010
Сообщений: 18
|
|
| 18.06.2012, 23:41 [ТС] | |
|
Да, но преподаватель сказал, что если после all я перечислю все поля, которые есть - это не будет равносильно *. Но я дома проверил, и я был прав - результат один и тот же. Я не знаю, что он от меня хочет.
0
|
|
|
1234 / 424 / 107
Регистрация: 31.03.2012
Сообщений: 1,159
|
|||||||||||
| 19.06.2012, 08:55 | |||||||||||
|
1) all и distinct указанные после оператора SELECT не имеют никакого отношения к отображаемым полям (колонкам) запроса, а относятся к отображаемым записям (строкам) запроса. А именно или все записи, или без дублей. А чтобы ты себе окончательно прояснил разницу посмотри здесь
2) указание * в списке выбираемых полей запроса должно приводить к отображению всех полей участвующих в запросе. Но кто сказал, что запросы такие запросы равноценны:
И конечно, все современные СУБД вернут одинаковые результаты для случая a) и с), в случае создания таблицы с помощью вышеприведенного оператора. Но никто не гарантирует тебе, что при указании * в качестве списка полей запроса, что эти поля запроса всегда будут жестко определены в каком-либо порядке. А в двух последних случаях этот порядок как раз и определен! (Кстати ИМХО!, стандартом SQL это не регламентировано, я могу и ошибаться, так, что знающие стандарт поправьте меня!) И не факт, что какая-нибудь СУБД не вернет их тебе, к примеру, в обратном порядке, просто потому, что ей (или разработчику, не важно) так удобнее
1
|
|||||||||||
|
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
|
|
| 19.06.2012, 11:30 | |
|
Выдержка из доки по Oracle
SQL Reference DISTINCT | UNIQUE Specify DISTINCT or UNIQUE if you want Oracle to return only one copy of each set of duplicate rows selected (these two keywords are synonymous). Duplicate rows are those with matching values for each expression in the select list. ALL Specify ALL if you want Oracle to return all rows selected, including all copies of duplicates. The default is ALL.
0
|
|
|
0 / 0 / 0
Регистрация: 10.11.2010
Сообщений: 18
|
|
| 19.06.2012, 14:39 [ТС] | |
|
Вот, что написал Joeymax, то и требовал от меня преподаватель. Т.е. что all - записи, а * - поля. Сам додумался. А ответ увидел уже после получения оценки. Всем спасибо. Тему можно закрыть.
0
|
|
| 19.06.2012, 14:39 | |
|
Помогаю со студенческими работами здесь
10
Разница между != и <= Разница между 64 и 32 Разница между <T> и <?>
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|