#!/usr/bin/env python # -*- coding: utf-8 -*- import sqlparse def format_sql(sql): """Format SQL query using sqlparse library.""" return sqlparse.format( sql, reindent=True, reindent_aligned=False, # statements are aligned by keywords. wrap_after=0, # after how many columns to put column in next line comma_first=False, keyword_case="upper", indent_after_first=False, indent_width=4, indent_columns=False, conpact=True, strip_whitespace=True, # right_margin=79, # not implemented in sqlparse ) if __name__ == "__main__": # read sql from stdin import sys if len(sys.argv) > 1: with open(sys.argv[1], "r", encoding="utf8") as f: sql = f.read() else: sql = sys.stdin.read() print(format_sql(sql))