我正在从带有长文本列的表格中进行选择。我想将长线包装到最大线长。
从:
SELECT * FROM test;
test_id | text
--------+-----------------------------------------------------------------------
1 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris lorem
至:
test_id | text
--------+-----------------------------
1 | Lorem ipsum dolor sit amet,+
| consectetur adipiscing elit+
| . Mauris lorem
如果您使用的是
psql
命令行工具,请先发出以下命令:然后它应该像这样将长行包装到您的终端窗口:
您还可以设置要换行的列数
您可以将点更改为椭圆
更多信息:http ://www.postgresql.org/docs/current/static/app-psql.html
我的回答不会直接回答你的问题,因为我认为 psql 本身不能专门做到这一点。但是,
\x
将打开扩展输出,这将使您的值如下所示:您还可以将寻呼机配置为不换行。
要切换到正常显示,只需再次发出命令 \x。说明:
通过该
Regexp_Replace
功能,我们可以分别控制每列的确切宽度。在您的示例中, 27 似乎是所需的列宽;所以我们, 获得
它是如何工作的: 我们告诉用它自己( )加上一个换行符( )
Regexp_Replace
替换一个 27 个连续字符(.{27}
)的块;并且全局标志( )表示要对所有这样的 27 个字符块执行此操作。\1
\n
g