Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Union по умолчанию группирует записи. / 6 сообщений из 6, страница 1 из 1
29.09.2017, 15:55
    #39528473
faustgreen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Union по умолчанию группирует записи.
Словил у себя недавно ошибку, пример которой проиллюстрирован ниже

Допустим, есть два склада, на каждый из которых привозят колбасу.

на первый склад привезли
Дата приход10.01 1011.01 2011.01 30

на второй привезли
Дата приход10.01 1011.01 2012.01 30

Хотим получить общий приход без привязки к складу, делаем:
Код: sql
1.
Select dateIncome, income from tableA union select dateIncome, income from tableB into tableC



получаем:
Дата приход10.01 1011.01 2011.01 3012.01 30

Вывод, не забывать ставить ALL там где это необходимо:
Код: sql
1.
Select dateIncome, income from tableA union all select dateIncome, income from tableB into tableC



Дата приход10.01 1011.01 2011.01 3010.01 1011.01 2012.01 30
...
Рейтинг: 0 / 0
29.09.2017, 15:59
    #39528479
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Union по умолчанию группирует записи.
faustgreen,
и с каких это пор такое поведение стало ошибкой? Может сначала матчасть подучить?
...
Рейтинг: 0 / 0
29.09.2017, 16:00
    #39528482
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Union по умолчанию группирует записи.
Всегда так было и везде так. Это стандартное поведение union.
...
Рейтинг: 0 / 0
29.09.2017, 16:09
    #39528489
faustgreen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Union по умолчанию группирует записи.
Ошибка была у меня, с union-ом все в порядке. Выложил, чтобы других предостеречь (Сам иногда просматриваю темы ради интереса, вот и подумал может кому пригодится). А насчет матчасти, Вы правы, надо знать. Ошибка собственно как возникла: Union использую не так часто, и когда раньше его использовал группировки не замечал, так как комбинации выбираемых полей были уникальными. И только после этого случая полез в хелп.
...
Рейтинг: 0 / 0
29.09.2017, 16:56
    #39528525
Fffffffffff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Union по умолчанию группирует записи.
Код: vbnet
1.
Union all
...
Рейтинг: 0 / 0
29.09.2017, 17:05
    #39528534
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Union по умолчанию группирует записи.
ИМХО проектировщики синтаксиса SQL накосячили в этом вопросе.
Надо было хоть как-то однообразно сделать, а то две противоположности получилось
Код: sql
1.
2.
select [distinct] 
union [all]


Но сейчас поздно что-то менять, надо просто знать про эту баго-фичу.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Union по умолчанию группирует записи. / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]