我需要一些帮助来确定是否有可能以管道|
分隔格式获取 sybase sql 查询的输出。
select top 10 * from mytable
返回的数据如下
我使用 sybase ASE 15 作为我的数据库来运行查询。
name age number
sam 20 1233456
我需要以下格式的数据
name|age|number
sam|20|123456
提前致谢
我需要一些帮助来确定是否有可能以管道|
分隔格式获取 sybase sql 查询的输出。
select top 10 * from mytable
返回的数据如下
我使用 sybase ASE 15 作为我的数据库来运行查询。
name age number
sam 20 1233456
我需要以下格式的数据
name|age|number
sam|20|123456
提前致谢
这个问题不是关于数据库本身,而是关于客户端 - isql。对于 isql,您可以实现此结果,但要像这样编写查询:
select top 10
name || '|' || convert(varchar, age) || '|' || convert(varchar, number)
from mytable
或者,就像 GMB 在评论中声明的那样,您可以使用允许格式化输出的客户端。isql 以外的东西。
如果您要使用isql,最好的建议是RTFM。看起来该-s
选项会做你想做的事。如果它留下尾随空白,您可以使用以下内容将其通过管道传输到sed中:
isql -s '|' ... | sed -E 's/ +\|//g'