日期:2014-05-17  浏览次数:20882 次

复杂update sql 语句的书写
我现在有一个表A,里面有字段a,b,c,d四个四段,我想再增加一个字段,e,字段e的内容是想把前面四个字段按照一定规则组成的字符串,如下例子:
a b c d
1 3.5 123 12.3

那么e的值应该是“001 03.50 123 12.30”,就是a字段补足三位,b字段补足小数点前两位,小数点后两位,c字段不变,d字段跟b字段一样。
请问这种更新的update语句应该怎么写啊?或是如果可以不用update语句的话,应该用什么sql语句?sql语句应该怎么写啊?

------解决方案--------------------
SQL code

 select rpad(99,3,0) abc1
       ,lpad(99,3,0) abc2      
   from dual

------解决方案--------------------
SQL code
UPDATE a
   SET e = lpad(a, 4, '0') || chr(32) || to_char(b, '09.90') || chr(32) ||
           to_char(c) || chr(32) || to_char(d, '09.90');