`sqlparse.format()` 官方文档说明:
SQL语句格式化
`format()` 函数接受以下关键字参数。
keyword_case
改变关键字的格式化方式。允许的值有 "upper"、"lower" 和 "capitalize"。
identifier_case
改变标识符的格式化方式。允许的值有 "upper"、"lower" 和 "capitalize"。
strip_comments
若为 True,则从语句中删除注释。
truncate_strings
若 `truncate_strings` 为正整数,则会将超过给定值长度的字符串截断。
truncate_char (默认值: "[...]")
若字符串被截断(参见上述 `truncate_strings`),则此值将追加到被截断的字符串上。
reindent
若为 True,则会更改语句的缩进。
reindent_aligned
若为 True,则会更改语句的缩进,并通过关键字对齐语句。
use_space_around_operators
若为 True,则在所有操作符周围使用空格。
indent_tabs
若为 True,则使用制表符代替空格进行缩进。
indent_width
缩进的宽度,默认为 2。
wrap_after
用于换行逗号分隔列表的列限制(以字符计)。如果未指定,则每个项目都放在单独的行上。
output_format
若指定了此值,则输出还将格式化为在编程语言中使用的变量。允许的值有 "python" 和 "php"。
comma_first
若为 True,则使用逗号优先的方式表示列名。
当 reindent
和 reindent_aligned
被设置为 True 时,它们分别对 SQL 语句的缩进进行不同的处理:
reindent=True
主要处理整体的缩进,使 SQL 语句更加统一和易读。reindent_aligned=True
则强调对关键字的对齐,突出每个逻辑块的起始位置,以便更好地展示 SQL 语句的结构。
实测倾向于使用 reindent_aligned=True
于使用显示更好