暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

在 Vim 中使用 pgFormatter 格式化SQL代码

原创 小小亮 2022-10-18
588

有时,一个看似简单的小费可以让世界变得不同。这些天我有足够多的白发,我很容易开始认为我已经看到了很多,但是当我经常看到同事在会议或tmux会话或其他地方工作时,我学到了一些新的和简单的东西,让我的生活明显更轻松。

Luca Ferrari 最近撰写了一篇关于在 Emacs 中使用 pgFormatter 的文章;在我选择的编辑器 Vim 中,本质上是相同的,它是我在处理复杂查询时最喜欢的快速提示之一。我不是特别想卷入编辑大战,只是本着对 Vim 用户友好合作的精神提供以下内容。

正如 Luca 所提到的,pgFormatter是一种让 SQL 查询自动可读的便捷方式。给它一些 SQL 很容易,并得到一个漂亮的结果作为输出:

$ pg_format < create_outbreaks.sql
INSERT INTO outbreak                      
SELECT                              
    nextval('outbreak_id'::regclass),
    extract('year' FROM now())::text || '-' || nextval('outbreak_number_seq')::text, --number
    (                        
        SELECT  
            first_name
        FROM person TABLESAMPLE BERNOULLI (10)
LIMIT 1), -- name
    NOW() - interval '1 day' * random() * 100, (
        SELECT
            id
        FROM "user" TABLESAMPLE BERNOULLI (10)
...

在我的完美世界中,我可能会对它的一些格式决定提出质疑,例如LIMIT 1上面一行缺少缩进。但在实践中,结果对我的口味来说已经足够好了,我没有费心去研究我是否可以改进它们。我只是使用它,它对我来说已经足够了。

因为 Vim 允许我突出显示一个区域,通过外部程序将其通过管道传递,并用该程序的输出替换该区域,只需选择一段代码并输入:!pg_format如下内容即可轻松使用它:




原文标题:Formatting SQL code with pgFormatter within Vim

原文作者:Josh Tolley

原文链接:https://www.endpointdev.com/blog/2022/04/formatting-sql-vim-pgformat/




「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论