news 2026/6/10 15:01:53

格式化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/6/10 13:32:57

mysql之字符串函数

假设我们有一个字符串 Hello, World! 作为示例&#xff0c;我们会展示对这个字符串应用每个函数后的结果。 CONCAT(str1, str2, …) 将多个字符串值连接成一个字符串。 SELECT CONCAT(Hello, , World!); -- 结果: Hello, World!LENGTH(str) 返回字符串的长度&#xff08;字节数…

作者头像 李华
网站建设 2026/5/8 10:51:07

【毕业设计】基于深度学习python-CNN卷积神经网络对土豆疾病识别基于python-CNN卷积神经网络对土豆疾病识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/10 14:52:46

LUT 调色预设 + HDR 环境贴图超全合集分享(影视 / CG / 三维渲染适用)

在三维动画、影视特效、建筑可视化和产品渲染等制作流程中&#xff0c;画面质感的核心往往来自两个方面&#xff1a;一是调色风格是否统一&#xff0c;二是环境光是否真实自然。本文整理并分享一套 LUT 调色预设 HDR 环境贴图超全合集&#xff0c;覆盖影视级调色与高质量环境光…

作者头像 李华
网站建设 2026/6/5 12:18:01

押注RGB和AI,彩电巨头决战2026 | CES洞察

“色彩革命”由中国家电们开始文&#xff5c;郭梦仪“物理AI的ChatGPT时刻即将到来。”英伟达创始人黄仁勋的开幕演讲&#xff0c;给今年的世界电子消费展定下了宏大的基调。这句话似乎正是今年的CES的主旋律。从这届全球消费电子产业的“技术晴雨表”&#xff0c;我们感知到&a…

作者头像 李华
网站建设 2026/6/2 13:16:39

jQuery Mobile 安装指南

jQuery Mobile 安装指南 引言 jQuery Mobile 是一个基于 jQuery 的开源移动开发框架,它可以帮助开发者轻松构建适用于各种移动设备的响应式网站。本文将详细介绍如何安装 jQuery Mobile,包括准备工作、下载和配置,以及常见问题的解决方法。 准备工作 在开始安装 jQuery …

作者头像 李华