Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
09.01.2019, 16:11
|
|||
|---|---|---|---|
|
|||
UNION увеличивает количество выводимых строк. |
|||
|
#18+
Добрый день! Столкнулся с интересным случаем: Имеется 2 запроса. Первый по оплаченным чекам, второй по неоплаченным. Запросы не имеют уникального идентификатора. При совмещении этих запросов через UNION, результат увеличивается на 7 лишних строк. С 3366+24 = 3390 до 3397. При добавлении в запрос Id содержащихся в чеке единиц продаж (часть id имеют дубль из запроса 1 в запросе 2), то результат выводится правильный 3390. Непонятно, как UNION может увеличивать количество выводимых строк. Может кто разъяснит подобное поведение программы? Заранее благодарю! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.01.2019, 16:28
|
|||
|---|---|---|---|
UNION увеличивает количество выводимых строк. |
|||
|
#18+
Kirill_l.s.Добрый день! Столкнулся с интересным случаем: Имеется 2 запроса. Первый по оплаченным чекам, второй по неоплаченным. Запросы не имеют уникального идентификатора. При совмещении этих запросов через UNION, результат увеличивается на 7 лишних строк. С 3366+24 = 3390 до 3397. При добавлении в запрос Id содержащихся в чеке единиц продаж (часть id имеют дубль из запроса 1 в запросе 2), то результат выводится правильный 3390. Непонятно, как UNION может увеличивать количество выводимых строк. Может кто разъяснит подобное поведение программы? Заранее благодарю! Легко. У Вас есть 7 чеков, по которым не было строк. Только заголовки. Покупатель набрал товаров - и отменил свой заказ на кассе. Сумма есть. Признак оплаты равен 0. Вы пишете первый запрос "по оплаченным чекам" и ставите условие "сумма оплаты > 0". И туда попадают эти отмененные 7 чеков. Вы пишете второй запрос "по неоплаченным" и ставите ДРУГОЕ условие "признак оплаты = 0". И туда тоже попадают эти отмененные 7 чеков. Вы пишете через inner join в таблицу заголовков использование строк чеков в ПЕРВОМ запросе - и там эти 7 чеков исчезают, а во втором запросе Вы inner join разумеется не используете, у отмененных чеков не бывает строк, поэтому там эти 7 чеков есть. И при union их становится 3390, а не 3397. Понятно? Следующий! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1688480]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
91ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 268ms |
| total: | 467ms |

| 0 / 0 |
