Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
10.11.2021, 19:41
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
Есть запрос Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Каким образом его можно переделать в ANSI SQL с Join? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.11.2021, 20:19
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
капец. всегда недолюблювал этот птичий синтаксис как в вашем скрипте зачем тут вообще джойны? exists в руки ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.11.2021, 21:05
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
Поскольку задача не формализована, есть подозрение, что в native запрос должен выглядеть так: Код: plsql 1. 2. 3.
Тогда в ANSI: Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.11.2021, 21:09
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
Также можно рекомендовать MINUS и FULL JOIN. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.11.2021, 21:57
|
|||
---|---|---|---|
|
|||
первод в ansi sql |
|||
#18+
Почему right? Вроде же left outer join могу ошибаться ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 09:00
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
Еще раз - я переставил плюсик, поскольку мне показалось, что с формулировкой задачи ошибка. Я понял ее так: найти строки t2, которых нет в t1. Соответственно, не left, а right. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 14:48
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
dmdmdm Я понял ее так: найти строки t2, которых нет в t1. Ты неправильно понял. Условие t1.rid = t2.rid(+) даст все строки t1 повторенные GREATEST(1,N) где N это число раз t1.rid встречается в t2. А вот условие t2.n(+) = null довольно "хитрое". Сравнение с NULL всегда дает UNKNOWN посему запрос есть хитронавороченый Код: plsql 1. 2. 3. 4.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 15:16
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
dmdmdm Я понял ее так: найти строки t2, которых нет в t1. И даже если поменять на t2.n(+) is null мы не получим строки t2, которых нет в t1. Мы получим все строки t1 повторенные GREATEST(1,N) раз где N это число раз t1.rid встречается в t2 и t2.n is null. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 15:19
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
SY, в чем отличие от Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
авторА вот условие t2.n(+) = null довольно "хитрое" "100%" внешнее соеденение (как будто т2 пустая) ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 15:22
|
|||
---|---|---|---|
|
|||
первод в ansi sql |
|||
#18+
Stax SY, в чем отличие от Код: plsql 1.
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 15:35
|
|||
---|---|---|---|
|
|||
первод в ansi sql |
|||
#18+
wsnet Есть запрос Код: plsql 1. 2. 3.
Каким образом его можно переделать в ANSI SQL с Join? Код: plaintext
То есть из таблицы T2 в результат никогда не попадут никакие данные (строки). Код: plsql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 16:48
|
|||
---|---|---|---|
первод в ansi sql |
|||
#18+
Валерий Юринский То есть из таблицы T2 в результат никогда не попадут никакие данные (строки). как будто т2 пустая ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 18:01
|
|||
---|---|---|---|
|
|||
первод в ansi sql |
|||
#18+
Stax Валерий Юринский То есть из таблицы T2 в результат никогда не попадут никакие данные (строки). как будто т2 пустая Именно так! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=52&tablet=1&tid=1879761]: |
0ms |
get settings: |
18ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
37ms |
get topic data: |
2ms |
get forum data: |
1ms |
get page messages: |
301ms |
get tp. blocked users: |
0ms |
others: | 2276ms |
total: | 2642ms |
0 / 0 |