Что означает «@+» и «@*» в (оракуле) SQL?

Я пытаюсь разобраться в sql-запросе. Я не могу найти ссылку на него в Интернете или в документации по синтаксису (оракула), кроме возможного использования @ для ссылки на внешние таблицы, что здесь не имеет смысла и смущает меня в отношении плюса.

[...]
from sometable 
   left join [...]
where @+sometable.somecolumn
and @+sometable.someothercolumn
and @*

Кто-нибудь видел это раньше или может указать мне правильное направление? ( таблица не называется @+, это я проверил :) )

Не похоже на Oracle для меня. Я надеюсь, что кто-нибудь узнает это и объяснит, что это значит.

Littlefoot 18.12.2020 13:16

Это недопустимо в Oracle. Похоже на заполнитель, который заменяется каким-то инструментом

a_horse_with_no_name 18.12.2020 13:21

Не могли бы вы предоставить больше контекста? Существует множество инструментов, которые реализуют собственный синтаксический анализатор для преобразования заполнителей или даже пользовательских языков в обычный SQL.

Álvaro González 18.12.2020 13:42
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
3
102
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как упоминалось a_horse_with_no_name: «Это недопустимо в Oracle. Похоже на заполнитель, который заменяется каким-то инструментом». Фактически он заменен каким-то внутренним проприетарным инструментом.

Однако этот код выглядит подозрительно, потому что есть по крайней мере вариант синтаксиса «@». Если вы запустите такой запрос, как select sysdate from dual@some_database;, он будет переведен на SELECT SYSDATE@! FROM "DUAL" "A1" на удаленном сервере. @! означает «выполнить эту команду в исходной базе данных, а не в удаленной базе данных».

Jon Heller 21.12.2020 05:56

Другие вопросы по теме