python-sql-format

输入:一个sql的字符串,格式任意或者比较乱

输出:一个相对有规则(缩进、换行)的sql-format的字符串

简单的例子:https://github.com/longgb246/python-sql-format

例子:


# input_sql 为如下输入

output_sql = sql_format(input_sql, wrap_add=None, mode='upper')

# output_sql 为如下输出

输入:


select field_1, field_2, cast(date_format(case when length(sale_date) > 10 then substring(sale_date,
                                                     1,
                                                     10) else sale_date end, 'u') as int),
                                                     SUM(field_3) as field_3, max(field_2)
from my_table
left join (Select field_2, sum(field_1) From (Select field_2, field_1 From another_table) as b group by field_2) as sub_table_on on my_table.field_2 = sub_table.field_2
left join table_three on my_table.field_1 = table_three.field_1
group by field_1, field_2 order by field_1 desc

输出:


SELECT
    field_1,
    field_2,
    CAST(DATE_FORMAT(CASE WHEN LENGTH(sale_date) > 10 THEN SUBSTRING(sale_date,
                            1,
                            10) ELSE sale_date END,
                    'u') AS int),
    SUM(field_3) AS field_3,
    MAX(field_2)
FROM
    my_table
LEFT JOIN
    (
        SELECT
            field_2,
            SUM(field_1)
        FROM
            (
                SELECT
                    field_2,
                    field_1
                FROM
                    another_table) AS b
        GROUP BY
            field_2) AS sub_table_on
ON
    my_table.field_2 = sub_table.field_2
LEFT JOIN
    table_three
ON
    my_table.field_1 = table_three.field_1
GROUP BY
    field_1,
    field_2
ORDER BY
    field_1 DESC

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值