ound函式是去小數點,我查過好多方法並不好用,於是有了
1round(cast(a/b as numeric), 2)
這個就可以用,要加個cast才可以的
補充:postgresql中to_char和round的混合使用
在postgresql中大家都用過round吧,當遇到小數的時候該如何顯示呢?看例子
1select to_char(round(127 * 0.1 / 67543,6)*10000,'90.99')
1.88
1select to_char(round(127 * 0.1 / 67543,6)*10000,'90.00')
1.88
1select to_char(round(150 * 0.1 / 50000,6)*1000,'90.09')
0.30
1select to_char(round(150 * 0.1 / 50000,6)*1000,'00.09')
00.30
1select to_char(round(150 * 0.1 / 50000,6)*1000,'99.09')
.30看出規則了沒?
呵呵,以上sql的結果說明:0是任意佔位符,如果0位上有資料那就顯示資料,如果沒有資料就顯示0;9是實數佔位符,9位上有資料(大於0 的數),顯示資料,沒有資料則什麼也不顯示。
所以當我們要取百分數或千分數的時候,要滿足xx.xx的格式時,就要用90.99當佔位符
postgresql中COALESCE 函式技巧
場景 存在乙個使用者白名單表,提供了此使用者的使用者名稱和地區資訊,判斷此使用者是否在此白名單表中。如 姓名 白名單地區 張三 中國,美國 則可使用如下語句 select id,user,area list from t white user where user and coalesce area...
PostgreSQL中的索引
索引是一種快速查詢資料的方法,它記錄了表中一列或多列與其物理位置之間的對應關係。常用的索引有b tree,hash,gist及gin等。1 b tree索引適合處理等值查詢和範圍查詢。2 hash只適合處理簡單的等值查詢。3 gist支援很多不同的索引策略。4 gin反轉索引,可以處理包含多個鍵的值...
postgresql中設定預設編碼
postgresql有兩個預設模板template0和template1,建立資料庫預設是以template1作為模板,兩個模板的區別是,如果以template0作為模板,可以自定義編碼,如下 create database db template template0問題似乎變得很明朗,想要改變po...