你要减小精度,必须修该的列为空才可以,可以先删除表数据,再修改。
目前创新互联公司已为近1000家的企业提供了网站建设、域名、网站空间、网站托管、企业网站设计、金台网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
修改的sql语句如下:
alter
table
emp
modify(sal
number(5,1));
用rpad函数,用法是
select rpad(字段,数字,'补位内容') 别名 from table;
数字表示补到多少位。
先不说你空值用0表示的问题
就是opdate=sysdate估计你也很难得到结果,sysdate表示系统当前时间,包含时分秒,你那个opdate怎么可能会和sysdate相等呢?
真的要是把空值用0表示的话,oracle中有nvl函数
select nvl(workbillid,0) from kf_workbill
意思就是把workbillid字段为空的显示成0,当然也可以显示成任何字符或者数字
友情提醒一下:
你那个opdate=sys笭法蒂盒郦谷垫贪叮楷date是不是该改成
to_char(opdate,'yyyymmdd')=to_char(sysdate,'yyyymmdd')
用Rpad('a',b,'c')
'a' 字符串
b要补足多少位
c补的字符。
望采纳!
有补位的,但是没有专门补0的,你想怎么补0?
如果是19改为19.00那么好像数据库内部直接就可以这样保存,我记得可以设置精确到多少位,怎么设置我忘了,不过应该是可以设置的。
类似这种我只会一个操作字符串的,不是操作数字的,是lpad(左补位)和rpad(右补位)
举例:
假设原来是字段内容为aa,
语句为select lpad(字段,5,'-') from table ,那么显示的内容为---aa。
如果是rpad那么则是aa---。5就是字符串总共的长度,'-'是你要添加的字符。