|
|
|
Запрос
|
|||
|---|---|---|---|
|
#18+
Всем привет, есть две таблицы: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. необходимо найти найти все записи из t1 для которых должны выполняться условия: если t1.id1 is not null и t2.id1 is not null, то запись выводится при условии t1.id1 = t2.id1 если t1.id1 is null и t2.id1 is null, то запись выводится если t1.id1 is null и t2.id1 is not null, то запись не выводится Запрос Код: plsql 1. 2. должен вернуть значения: t1.tt1.idt1.id1t2.tt2.idt2.id111121112 133 155255166266177277188 199299 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 15:24 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
cobalt_frog, Почему t1.id = 3 возвращается? По условиям t1.id1 is not null должен сджойниться только с t2.id1 = 3, которой нет. З.Ы. курите NVL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 15:37 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
Dshedoocobalt_frog, Почему t1.id = 3 возвращается? По условиям t1.id1 is not null должен сджойниться только с t2.id1 = 3, которой нет. З.Ы. курите NVL Задача такая, что значение 3 должно возвращаться. + доп условие: • если t1.id1 is not null и t2.id1 is null, то запись выводится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 15:46 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
cobalt_frogDshedoocobalt_frog, Почему t1.id = 3 возвращается? По условиям t1.id1 is not null должен сджойниться только с t2.id1 = 3, которой нет. З.Ы. курите NVL Задача такая, что значение 3 должно возвращаться. + доп условие: • если t1.id1 is not null и t2.id1 is null, то запись выводится Я обратился к местному экстрасенсу, он утверждает, что у вас в условиях кое-где перепутаны id1 и id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 16:07 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 16:08 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
Dshedoo Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. столбец id указан просто для примера, на него не стоит ориентироваться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 16:16 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
cobalt_frogDshedoo Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. столбец id указан просто для примера, на него не стоит ориентироваться. Тогда строка с t.id = 4 не укладывается в описанную логику. Так как t.id1 is null должен сджойниться с любой строкой, где t2.id1 is null, т.е. с 3 строками, у которы t2.id in (2,3,8). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 16:19 |
|
||
|
Запрос
|
|||
|---|---|---|---|
|
#18+
Dshedoocobalt_frogпропущено... столбец id указан просто для примера, на него не стоит ориентироваться. Тогда строка с t.id = 4 не укладывается в описанную логику. Так как t.id1 is null должен сджойниться с любой строкой, где t2.id1 is null, т.е. с 3 строками, у которы t2.id in (2,3,8). в том то и дело( придется доп логику заводить для задачи на новый столбец. Если вводить новый столбец, то ваш способ работает. Спсибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2019, 16:26 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39760322&tid=1882931]: |
0ms |
get settings: |
11ms |
get forum list: |
22ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
15ms |
get forum data: |
4ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 415ms |

| 0 / 0 |
