当前位置:编程学习 > C#/ASP.NET >>

oracle中如何将两列数据合并成一列?请指教

比如表table有两字段a和b,都是number类型的

      a       b
    2002     5
    2003     6
    2007     10

合并后显示成:

     c
   2002.5
   2003.6
   2007.10

还有个问题,怎么让查询出来的number类型的数据保留两位小数? --------------------编程问答-------------------- select   trunc(to_number(2002||'.'||555),2)   from   dual;   
--------------------编程问答-------------------- 楼上的把我意思弄错了

合并时好象应该转换一下类型吧?


而我最后一个问题是针对别的字段的,两个问题不要弄混淆,误导大家,谢谢 --------------------编程问答-------------------- select to_char(a)+'.'+to_char(b) as c from table;

select trunc(a,2) as d from table; --------------------编程问答-------------------- 笨啊,你非要我把下面的语句拆成两条才算得上回答你的两个问题么
select   trunc(to_number(a¦ ¦'.' ¦ ¦b),2)   from   table;   --------------------编程问答--------------------
引用 4 楼 jinjazz 的回复:
笨啊,你非要我把下面的语句拆成两条才算得上回答你的两个问题么 
select   trunc(to_number(a¦ ¦'.' ¦ ¦b),2)   from   table;  


汗一个。。 --------------------编程问答-------------------- 其中:num表中的字段属性如下:
列名  数据类型   长度   允许空
id   int       4      no
num1 real      4      yes
num2 real      4      yes
num3 real      4      yes

去数据库里面执行下如下的存储过程就ok了!           proc_num 



CREATE PROCEDURE proc_num 
AS
declare @num  float
declare @i  float
declare @str char(20)
declare @num_temp float
set @i=1
set @num_temp=0
select @num=count(*)  from num 
while(@i<=@num)
begin
select @num_temp= num1+(num2+0.0)/power(10,len(num2))  from num where id=@i
--select @num_temp
update num set num3=@num_temp where id=@i
set @i=@i+1

end
GO
--------------------编程问答-------------------- ORACLE中通过
select to_char(a)||'.'||to_char(b) c from vip_leaveword
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,