Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
22.06.2020, 22:03
|
|||
---|---|---|---|
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
Здравствуйте! Дело было так... Имеется некая таблица T Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
В ней находятся данные: F1 F2 A1B1C1B2C2D2 Делаю следующий запрос без общего условия : Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
Получаю ожидаемый результат: T1_F1 T2_F1 BBCCDA Теперь добавляю условие Код: sql 1.
, ожидая получить единственную строчку T1_F1 T2_F1 D ... но получаю следующее: T1_F1 T2_F1 BCD Проверялось на 2.5.9. Традиционные два вопроса: кто виноват? и что делать? С уважением, Денис. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 22:32
|
|||
---|---|---|---|
|
|||
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
dennis-r, а с чего ты решил что это не правильно? Сначала произошла фильтрация, а потом соединение. Для гарантии твоего результата оберни свой исходный запрос в ещё одну CTE ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 22:55
|
|||
---|---|---|---|
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
Симонов Денис dennis-r, а с чего ты решил что это не правильно? Сначала произошла фильтрация, а потом соединение. Для гарантии твоего результата оберни свой исходный запрос в ещё одну CTE Кстати, я проверил это дело в PostgresSQL 9.6 - там получается ожидаемый результат с одной строкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 23:01
|
|||
---|---|---|---|
|
|||
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
dennis-r, вообще эта бага. В 3.0 её поправили, а в 2.5 уже наверное не будут ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 23:05
|
|||
---|---|---|---|
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
Симонов Денис dennis-r, вообще эта бага. В 3.0 её поправили, а в 2.5 уже наверное не будут ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 23:16
|
|||
---|---|---|---|
|
|||
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
dennis-r, я помню что-то правили насчёт FULL JOIN, но номер тикета не скажу. Проверил в 3.0.5 и 4.0 Beta2 результат ожидаемый. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 23:19
|
|||
---|---|---|---|
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
Симонов Денис, Проверил в 3.0.5 - да, там работает, как и ожидалось. Теперь осталось придумать, как эту проблему обойти в 2.5. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 23:21
|
|||
---|---|---|---|
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
dennis-r Теперь осталось придумать, как эту проблему обойти в 2.5. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.06.2020, 23:38
|
|||
---|---|---|---|
Два CTE, их full join и условие дают некорректный результат |
|||
#18+
hvlad Не делать full join там, где он не нужен ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=40&mobile=1&tid=1560321]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 252ms |
total: | 417ms |
0 / 0 |