Чувствительность к регистру имен функций в BigQuery
Я изучаю синтаксис Google BigQuery, и в настоящее время читаю документацию по идентификаторам и чувствительности к регистру. Я сосредоточен на стандартном синтаксисе SQL BigQuery.
В документации говорится:
BigQuery следует следующим правилам чувствительности к регистру:
Категория | Деликатный случай?
Имена функций | Нет
Но когда я запускаю в консоли следующие операторы:
#standardSQL
create function cs_test.function_a (x int64, y int64) as (x*y);
create function cs_test.function_A (x int64, y int64) as (x-y);
select cs_test.function_a(5,6); -- 30
select cs_test.function_A(5,6); -- -1
создаются две функции, и в результате операторов выбора предоставляются разные результаты.
В то же время, если я запускаю следующие операторы, я получаю сообщение об ошибке, в котором говорится, что функция не найдена:
create function cs_test.function_b (x int64, y int64) as (x+y);
select cs_test.function_B(5,6); -- NOK
Является ли имя функции нечувствительным к регистру в Google BigQuery? Судя по приведенным выше фрагментам кода, в нем учитывается регистр.
Спасибо.
1 ответ
То, что вы нашли, правильно. Документация обновлена, чтобы отразить это:
| Category | Case Sensitive? |
| Built-in Function names | No |
| User-Defined Function names | Yes |