Ответ 1
Вы можете попробовать sqlparse. Это модуль Python, который обеспечивает простое форматирование SQL. Онлайн-демонстрация доступна здесь.
Я хотел бы переформатировать некоторые инструкции SQL, которые представляют собой одну строку с символами новой строки, в нечто гораздо более удобное для чтения.
Я лично не знаю хорошего стиля кодирования для отступов SQL - как вложенные запросы/где предложения/левые соединения /etc представлены для максимальной читаемости?
Кто-нибудь видел симпатичный алгоритм печати, который делает это уже? В Python было бы еще лучше.
Вы можете попробовать sqlparse. Это модуль Python, который обеспечивает простое форматирование SQL. Онлайн-демонстрация доступна здесь.
Я лично использую SQL Inform для быстрого форматирования SQL, который написан на Java и, к сожалению, не является открытым исходным кодом, поэтому нет доступа к основному алгоритму.
Возможно, часть трудности в поиске инструмента заключается в том, что существует так много разных "стандартных" соглашений о форматировании SQL. Вот два SO-вопроса, которые описывают предпочтения людей:
Ранее я использовал SQL Complete by Devart для форматирования SQL, но теперь есть бесплатный онлайн-конструктор SQL, основанный на SQL Complete - SQL Formatter он действительно многофункциональный и простой в использовании даже для новичков.
Не знаю, отвечает ли он на ваш вопрос, но я обычно использую эту стратегию
SELECT what1, what2, etc,
FROM table
WHERE condition
AND condition
AND condition
ORDER BY whatever
Но это только я. Я не думаю, что существуют надлежащие автоматические инструменты.