Sybase 查询:如何对提取进行排序(按格式正确的列)

Sybase query: How can I sort the extraction (by well formed columns)

我在脚本中构建了一个 Sybase 查询 语句(使用 isql command/line)下面是代码:

我的脚本包含:

isql -U databasename_dba -P password  <<EOF!
select  customerid, notional, counterparty2 from table_1  inner join  table_2
on id = id2 
go
quit
EOF!

我明白了:

我的期望输出将是:

认为仅提取数据(不包括 headers)可能会修复输出。我在我的代码中添加了 -b

isql -U databasename_dba -P password  -b <<EOF!

但输出没有太大变化

提前致谢

首先,您可以传入 -w 参数来指定行的宽度,这样您就不会跨行重叠(例如 -w2000)

isql 工具将 return 列宽取决于实际 table 列的宽度,因此,例如,如果您将其定义为数字 18 但仅使用 12 位数字,您仍然在输出中得到 18 个字符。您可以根据数据类型使用 rtrim(customerid),也可以使用 convert(varchar(12), customerid)。我怀疑有人可能将其定义为 50 个字符或更多。您可以根据需要对每一列重复此操作。

您也可以考虑使用 sp_autoformat 看看是否有帮助 - http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36273.1570/html/sprocs/BABHCBIG.htm