在 Oracle SQL SELECT 中设置连接列的宽度

sam*_*d0n 1 sql oracle width

我正在尝试在 Oracle 中设置连接列的宽度,但我不确定如何完成此操作。

我有这样的东西(简化):

SELECT t.first_name || ' ' || t.family_name "Trainer name"
FROM trainer t
Run Code Online (Sandbox Code Playgroud)

输出如下所示:

Trainer name                       
------------------------------------
Bill Gates                        
Steve Jobs                           
Isaac Asimov
Run Code Online (Sandbox Code Playgroud)

我试图将列宽限制为 18 个字符。我试图使用列

COLUMN t.first_name || ' ' || t.family_name FORMAT A18
Run Code Online (Sandbox Code Playgroud)

但这是行不通的。文档说:“如果在 COLUMN 命令中使用表达式,则必须完全按照 SELECT 命令中的显示输入 expr”。我究竟做错了什么?

joe*_*mct 5

另一种选择是将输出转换为 char(18):

http://sqlfiddle.com/#!4/69410/1

SELECT 
    cast(t.first_name || ' ' || t.family_name as char(18))   as "Trainer name"
FROM trainer t
Run Code Online (Sandbox Code Playgroud)