|
|
|
Bug 9.0.2.2551
|
|||
|---|---|---|---|
|
#18+
Вот обнаружилось следующее : alter procedure TLSYS.bug_9022551(in ShowBug integer) begin declare local temporary table #CL( row_id char(1) not null, qty_row numeric(16,2) null, row_key char(8) not null, ) on commit delete rows; insert into #CL values( '1',3,'QWERTY') ; insert into #CL values( '2',4,'ASDFGH') ; insert into #CL values( '3',5,'QWERTY') ; insert into #CL values( '4',3,'QWERTY') ; insert into #CL values( '5',4,'ASDFGH') ; insert into #CL values( '6',5,'QWERTY') ; insert into #CL values( '7',3,'QWERTY') ; insert into #CL values( '8',4,'ASDFGH') ; insert into #CL values( '9',5,'QWERTY') ; if ShowBug = 1 then select row_key,qty_row from #CL union select 'ZXCVBN',0 from dummy else select row_key,qty_row from #CL end if -- select sum(qty_row) from bug_9022551(0) = 36 -- select sum(qty_row) from bug_9022551(1) = 12 end; т.е. если в результат выборки не идет уникальный идентификатор - то при последующем UNION он просто сливает записи. Удачи ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 15:55 |
|
||
|
Bug 9.0.2.2551
|
|||
|---|---|---|---|
|
#18+
Гм, читаем BOL про UNION: BOLThe results of UNION are the same as UNION ALL, except that duplicate rows are eliminated. Eliminating duplicates requires extra processing, so UNION ALL should be used instead of UNION where possible. UNION DISTINCT is identical to UNION. То есть четко сказано, что UNION=UNION DISTINCT, т.е. из результирующего набора данных будут удалены все дубликаты, у которых значения полей совпадают. Вывод: бага нет, поставьте в процедуре UNION ALL и все заработает как нужно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 16:05 |
|
||
|
Bug 9.0.2.2551
|
|||
|---|---|---|---|
|
#18+
ASCRUSГм, читаем BOL про UNION: BOLThe results of UNION are the same as UNION ALL, except that duplicate rows are eliminated. Eliminating duplicates requires extra processing, so UNION ALL should be used instead of UNION where possible. UNION DISTINCT is identical to UNION. То есть четко сказано, что UNION=UNION DISTINCT, т.е. из результирующего набора данных будут удалены все дубликаты, у которых значения полей совпадают. Вывод: бага нет, поставьте в процедуре UNION ALL и все заработает как нужно :) Про себя : когда ничего не помагает - прочти наконец инструкцию, если это не помогло - прочти ее внимательно ! Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2005, 16:27 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=32908636&tid=2013892]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 166ms |

| 0 / 0 |

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