用SQL查询出来的记录如何实现多列显示 ?

比如,一张表里有2个字段,分别是name和num,用常用的select查询语句呢 显示出来的记录是都是一列的 ,我现在想要实现比如:A 001 B 002
C 003 D 004, 不是以前的A 001
B 002
C 003 ,请问SQL语句应该怎么写

参照select decode(trim(name),'A',name,null),decode(trim(name),'A',num,null),decode(trim(name),'B',name,null),decode(trim(name),'B',num,null),decode(trim(name),'C',name,null),decode(trim(name),'C',num),decode(trim(name),'D',name,null),decode(trim(name),'D',num) From TAB
如果想输出到一行除非使用PL/SQL语句..直接写不出来..只能针对个别情况(数量级小)进行临时的改造,没有万能语句.追问

我想问下 如果用PL/SQL语言写,应该怎么写》谢谢大侠啦

追答

那就是循环 输出到变量, 这个很简单的..
定义个游标从表读取 NAME和NUM 每次输出结果到 自定义字符串.. 字符串累加
最后输出字符串即可

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-17
用临时表处理一下,或者用存储过程实现。
如果用Sql语句的话还要分析一下数据有什么特征,例如有多少个name,语句就要拼多少。
相似回答