Перейти к содержимому

Форматировщик Redshift

Форматируйте Amazon Redshift SQL по правилам Redshift для строк с экранированием обратной косой чертой, идентификаторов в двойных кавычках, таблиц #temp, приведений типов :: и тел функций $$. QUALIFY и MINUS сохраняются как предложения, ветви MERGE начинаются с новых строк, а длинные списки столбцов размещаются по одному в строке. О незакрытых строках и скобках сообщается с указанием строки и столбца, что помогает аналитикам и инженерам по данным проверять код для хранилища данных.

Сбросить

Часто задаваемые вопросы

Какой синтаксис Redshift распознается?

Распознаются строки в одинарных кавычках с экранированием обратной косой чертой и удвоенными кавычками, идентификаторы в двойных кавычках, имена таблиц #temp и приведения типов ::. Операторы регулярных выражений ~ и ~* с отрицательными формами, а также тела функций в долларовых кавычках $$ сохраняются целиком.

Чем это отличается от форматировщика PostgreSQL?

Redshift создан на основе PostgreSQL, но отличается: обратная косая черта экранирует символы в строках, # начинает имя временной таблицы, а не обозначает оператор, и доступны QUALIFY и MINUS. Этот форматировщик следует этим правилам.

Как форматируются тела UDF?

Тела пользовательских функций Python или SQL, записанные между маркерами $$, сохраняются в точности как написаны. Форматируется только окружающая их инструкция.

Какие конструкции размещаются на отдельных строках?

SELECT, FROM, WHERE, GROUP BY, HAVING, QUALIFY, ORDER BY, LIMIT и OFFSET начинаются с новых строк. MINUS, UNION, INTERSECT и EXCEPT разделяют объединяемые запросы.

Поддерживается ли MERGE?

Да. Ветви WHEN MATCHED и WHEN NOT MATCHED начинаются с новых строк.

Сохраняются ли комментарии?

Да. Комментарии -- и /* */ остаются на месте. Многострочные блочные комментарии получают новые отступы в соответствии с новым форматированием.

Меняется ли регистр ключевых слов?

Нет. Ключевые слова и имена сохраняют регистр, в котором вы их написали. Меняются только пробелы и переносы строк.

Какие ошибки обнаруживаются?

Незакрытые строки, идентификаторы в кавычках, тела $$, блочные комментарии и несбалансированные скобки — для каждого случая указаны строка и столбец. SQL не отправляется в ваш кластер.

Каков максимальный размер входных данных?

До 1 МБ на запрос и 128 КБ на инструкцию. Длинные ETL-скрипты форматируются по одной инструкции за раз.

Можно ли выбрать отступы и сохраняется ли мой SQL?

Используйте 2 или 4 пробела либо табуляцию. SQL форматируется только в памяти и никогда не сохраняется.

О проекте OneClick Pro

OneClick Pro — это бесплатная коллекция из более чем 150 веб-инструментов для повседневных задач: преобразования изображений и единиц измерения, форматирования и проверки кода, проверки доменов и SEO, а также работы с текстом, датами и числами. Все инструменты доступны без регистрации и подписки, а введенные вами данные используются только для расчета результата и никогда не сохраняются. Используйте коллекцию как быстрый набор инструментов для разовых задач или добавьте в закладки те, которыми пользуетесь каждый день.