news 2026/5/30 14:08:03

格式化SQL工具pg_prettify

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
格式化SQL工具pg_prettify

pg_prettify命令行工具,用于格式化(美化)SQL 查询语句。以下是内容总结:


一、工具背景

  • 作者在一个月前开发了一个 SQL 查询“美化器”(pretty-printer)。
  • 本次为其添加了命令行界面,方便日常使用。

二、工具信息

  • 名称pg_prettify
  • 仓库地址:shell_utils repo(GitLab)

三、使用示例

1. 原始 SQL(未格式化):
SELECTn.nspnameas"Schema",p.pronameas"Name",pg_catalog.pg_get_function_result(p.oid)as"Result data type",pg_catalog.pg_get_function_arguments(p.oid)as"Argument data types",CASEp.prokindWHEN'a'THEN'agg'WHEN'w'THEN'window'WHEN'p'THEN'proc'ELSE'func'ENDas"Type"FROMpg_catalog.pg_proc pLEFTJOINpg_catalog.pg_namespace nONn.oid=p.pronamespaceWHEREpg_catalog.pg_function_is_visible(p.oid)ANDn.nspname<>'pg_catalog'ANDn.nspname<>'information_schema'ORDERBY1,2,4;
2. 使用pg_prettify格式化后:
SELECTn.nspnameAS"Schema",p.pronameAS"Name",pg_catalog.pg_get_function_result(p.oid)AS"Result data type",pg_catalog.pg_get_function_arguments(p.oid)AS"Argument data types",CASEp.prokindWHEN'a'THEN'agg'WHEN'w'THEN'window'WHEN'p'THEN'proc'ELSE'func'ENDAS"Type"FROMpg_catalog.pg_procASpLEFTJOINpg_catalog.pg_namespaceASnONn.oid=p.pronamespaceWHEREpg_catalog.pg_function_is_visible(p.oid)ANDn.nspname<>'pg_catalog'ANDn.nspname<>'information_schema'ORDERBY1,2,4;-- Formatted by Pg::SQL::PrettyPrinter

四、命令行选项

$ pg_prettify -h Syntax: pg_prettify[-s][-u URL][-p PARAM_NAME]<input.file or pg_prettify[-s][-u URL][-p PARAM_NAME]input.file Options: -s - 移除格式化工具的注释(即不显示“Formatted by...”) -u - 指定美化服务的URL,默认为 https://paste.depesz.com/prettify -p - 指定HTTP参数名称,默认为 q

五、总结

该工具能够将杂乱或压缩的 SQL 语句自动格式化为结构清晰、易读的样式,支持通过命令行直接使用或配合文件输入,并提供了简单的自定义选项。适用于需要频繁查看或分享 SQL 代码的开发者和数据库管理员。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 12:21:05

光特通信40G光模块:适配各种需求的高速传输方案

在数据中心密集连接、企业园区网络升级、工业极端环境部署这些场景里&#xff0c;40G光模块是保证数据高速传输的核心部件。光特通信作为全球光通信解决方案服务商&#xff0c;有20年的技术积累&#xff0c;打造了全系列40G光模块产品&#xff0c;涵盖普通环境、长距离、工业恶…

作者头像 李华
网站建设 2026/5/30 12:22:10

都说网络安全前景好,到底好在哪?3 个数据给你答案

都说网络安全前景好&#xff0c;到底好在哪&#xff1f;3 个数据给你答案 数字化时代里&#xff0c;网络安全早已不是“可选项”而是“必选项”。从政府机关到互联网公司&#xff0c;从金融能源到日常消费&#xff0c;各行各业的安全防护需求持续爆发&#xff0c;让这个行业成…

作者头像 李华
网站建设 2026/5/30 12:22:00

MySQL中存储过程(详解,一篇就够了!!!)

一、MySQL中什么事存储过程&#xff1f; 存储过程是事先经过编译并存储在数据库中的一段SOL语句的集合&#xff0c;调用存储过程可以简化应用开发人员的很多工作&#xff0c;减少数据在数据库和应用服务器之间的传输&#xff0c;对于提高数据处理的效率是有好处的。存储过程思…

作者头像 李华
网站建设 2026/5/30 13:14:35

MySQL下载安装及配置

1.官网下载https://dev.mysql.com/downloads/mysql/2.下载解压安装包3.把下载文件打开&#xff0c;进入到bin文件中&#xff0c;将文件路径复制到系统变量path中4. 在MySQLmysql-9.1.0-winx64文件夹的根目录下&#xff0c;新建一个my.ini文件&#xff0c;把下面内容复制到文件中…

作者头像 李华
网站建设 2026/5/30 13:14:20

MySQL加减间隔时间函数DATE_ADD和DATE_SUB的详解

目录 前言语法示例代码运用 前言 mysql中内置函数date_add 和 date_sub能对指定的时间进行增加或减少一个指定的时间间隔&#xff0c;返回的是一个日期。 语法 添加时间间隔 DATE_ADD(date,INTERVAL expr type)SELECT DATE_add(NOW(),INTERVAL -7 DAY);//获取7天前的日期…

作者头像 李华
网站建设 2026/5/30 13:14:55

学霸同款8个一键生成论文工具,专科生毕业论文轻松搞定!

学霸同款8个一键生成论文工具&#xff0c;专科生毕业论文轻松搞定&#xff01; AI 工具助力论文写作&#xff0c;轻松应对学术挑战 随着人工智能技术的不断发展&#xff0c;AI 工具在学术写作中的应用越来越广泛。对于专科生来说&#xff0c;撰写毕业论文是一项既重要又充满挑战…

作者头像 李华