重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
先將數據轉換為numeric類型,保留4位小數點,由零點幾變為百分號前邊的數字,再轉換為varchar類型,然后再加'%'
創新互聯建站是專業的慶云網站建設公司,慶云接單;提供做網站、網站制作,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行慶云網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
如:
select ml as 毛利,sshje as 實收金額,
cast(cast(ml/sshje as numeric(4,4))*100 as varchar(20)) + '%' as 利潤率
from chasalldayhz
select 12.23-ceil(12.23) from dual
--結果 -0.77
select substr(12.23-floor(12.23),2,10) from dual;
--這個東西做不到通用沒什么價值
--如果
select substr(12.231111111111111-floor(12.231111111111111),2,10) from dual;
--結果不會是231111111111111,而是2311111111
select ltrim(0.55523-floor(0.55523),'0.') from dual;
--這個比較有代表性
--1
select substr(12.25,instr(12.25,'.')+1,length(12.25)) from dual;
--結果 25
--2
select A.a*power(10,length(A.a)-1) from
(select trunc(12.25333,length(12.25333))-trunc(12.25333,0) a from dual) A
--結果 25333
--方法很多的,看你想怎么個實現方法。最好做成函數,通用一點。
select round(a/b,2) from table where c='T';
以上SLQ語句為,
從表table中查詢符合c字段值為‘T’的值,
并將值a除以b,得到的結果如果包含小數,則保留兩位小數點。
函數round(x[,y])介紹:
【功能】返回四舍五入后的值
【參數】x,y,數字型表達式,如果y不為整數則截取y整數部分,如果y0則四舍五入為y位小數,如果y小于0則四舍五入到小數點向左第y位。
【返回】數字
與此函數相近的函數是trunc(x[,y]) ,返回截取后的值,用法同round(x[,y]),只是不四舍五入
java里面有的…… DecimalFormat
字符含義
一位數字,這一位缺失顯示為0。用來補零
#
一位數字, 這一位缺失就不顯示
.
小數點,不用多說了吧
,
千位分隔符
E
科學計數法
%
百分比
比如你要的就是#.00 你搜下DecimalFormat 吧。我搞c的……前陣正好項目中java的同事碰到這個
如果 是24.24要怎么弄?你可以判斷他是大于1 還是小于1
如果大于1 再判斷他是不是整數,如果小于1 判斷 等不等于0 然后再用round()函數,或者 substr 就可以了!
SQL SELECT
2 TO_CHAR(123,'9990.00') A,
3 TO_CHAR(5.8,'9990.00') B,
4 TO_CHAR(.46,'9990.00') C
5 FROM
6 dual;
A B C
---------------- ---------------- ----------------
123.00 5.80 0.46
SQL