欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

oracle 去重复,¥货币,保留小数点后两位,测试SQL语句执行时间

程序员文章站 2022-07-12 16:00:26
...


1.去重复数据:select * from b a where id > (select min(id) from b b where a.name=b.name)


2.测试SQL语句执行时间的方法和步骤:
SQL> set timing on;
步骤:

1. alter system flush shared_pool; --刷新一下shared_pool      
2. set timing on ; --允许统计时间  
3. select ... ; --执行sql语句

举例说明:

SQL/Plus

SQL> set timing on
SQL> select * from test2;


3.lpad 填充字符(长度不够就填充字符)
select lpad(id,5,'0') from b ;

 

4. select ltrim(rtrim(id)) from b ; 去除空格

 

5. 按指定格式显示小数点及小数点后位置(指定数字没有小数的话,以0补足)

例如:

SQL> select to_char(18,'999.000') from dual;


TO_CHAR(

--------

18.000

 

6.L 指定位置显示本地默认符号(默认值见:NLS_CURRENCY)

例如:

SQL> select to_char(999,'L999') from dual;


TO_CHAR(999,'L

--------------

¥999


SQL> alter session set nls_currency='haha';


会话已更改。


SQL> select to_char(999,'L999') from dual;


TO_CHAR(999,'L

--------------

haha999

 

7、U 与L类似,在指定位置显示货币单位(默认值见:NLS_DUAL_CURRENCY)

例如:

SQL> select TO_CHAR(128,'999U') from dual;


TO_CHAR(128,'9

--------------

128¥


SQL> alter session set nls_dual_currency='aaa';


会话已更改。


SQL> select TO_CHAR(128,'999U') from dual;


TO_CHAR(128,'9

--------------

128aaa


8、 to_char(0.1323,'9999999999990.00')                保留小数点后两位
  显示成0.13

 

9.一个解决Oracle number类型查询精度丢失的方法:
 //四舍五入小数点后2位

list.add(new BigDecimal(zcxxhj).setScale(2, BigDecimal.ROUND_HALF_UP));

 

 

相关标签: SQL Oracle UP