MySql資料庫中確保精度問題解決方案

2021-08-23 11:49:41 字數 2234 閱讀 1096

truncate(columname,num) 擷取前num位。前者表示欄位名,後者表示保留幾位小數點。

如:250.32952 是某個字段對應的值,那麼用truncate後就是:250.32。

這個方法非常有用,特別是在這樣的情況下:如果要求你先將某兩個欄位的積擷取兩位,然後再求和,那麼這時單用sum()是不可以的!

truncate(columname1*columname2,2)就可以輕鬆搞定。

rand(n)

返回在範圍0到1.0內的隨機浮點值。如果乙個整數引數n被指定,它被用作種子值。

mysql> select rand();

-> 0.5925

mysql> select rand(20);

-> 0.1811

mysql> select rand(20);

-> 0.1811

mysql> select rand();

-> 0.2079

mysql> select rand();

-> 0.7888

你不能在乙個order by子句用rand()值使用列,因為order by將重複計算列多次。然而在mysql3.23中,你可以做: select * from table_name order by rand(),這是有利於得到乙個來自select * from table1,table2 where a=b and c

least(x,y,...)

有2和2個以上的引數,返回最小(最小值)的引數。引數使用下列規則進行比較:

如果返回值被使用在乙個integer上下文,或所有的引數都是整數值,他們作為整數比較。

如果返回值被使用在乙個real上下文,或所有的引數是實數值,他們作為實數比較。

如果任何引數是乙個大小敏感的字串,引數作為大小寫敏感的字串被比較。

在其他的情況下,引數作為大小寫無關的字串被比較。

mysql> select least(2,0);

-> 0

mysql> select least(34.0,3.0,5.0,767.0);

-> 3.0

mysql> select least("b","a","c");

-> "a"

在mysql 3.22.5以前的版本,你可以使用min()而不是least。

greatest(x,y,...)

返回最大(最大值)的引數。引數使用與least一樣的規則進行比較。

mysql> select greatest(2,0);

-> 2

mysql> select greatest(34.0,3.0,5.0,767.0);

-> 767.0

mysql> select greatest("b","a","c");

-> "c"

在mysql在 3.22.5 以前的版本, 你能使用max()而不是greatest.

degrees(x)

返回引數x,從弧度變換為角度。

mysql> select degrees(pi());

-> 180.000000

radians(x)

返回引數x,從角度變換為弧度。

mysql> select radians(90);

-> 1.570796

truncate(x,d)

返回數字x,截斷為d位小數。如果d為0,結果將沒有小數點或小數部分。

mysql> select truncate(1.223,1);

-> 1.2

mysql> select truncate(1.999,1);

-> 1.9

mysql> select truncate(1.999,0);

-> 1

floor(x)

返回不大於x的最大整數值。

mysql> select floor(1.23);

-> 1

mysql> select floor(-1.23);

-> -2

注意返回值被變換為乙個bigint!

ceiling(x)

返回不小於x的最小整數值。

mysql> select ceiling(1.23);

-> 2

mysql> select ceiling(-1.23);

-> -1

注意返回值被變換為乙個bigint!

mysql資料庫中的 MySQL資料庫中定義

定義資料表 假如某個電腦生產商,它的資料庫中儲存著整機和配件的產品資訊。用來儲存整機產品資訊的表叫做pc 用來儲存配件供貨資訊的表叫做parts。在pc表中有乙個字段,用來描述這款電腦所使用的cpu型號 在parts表中相應有乙個字段,描述的正是cpu的型號,我們可以把它想成是全部cpu的型號列表。...

mysql資料庫中mysql庫中user表被刪除

由於mysql資料庫中mysql庫中的user表被刪除,試了一些方法恢復不了,決定把原來的mysql資料夾刪除後重新再安裝個新的,其實這個不用安裝,解壓後就行 按照另一篇部落格 mysql安裝 裡走到生成data檔案時出錯,然後 mysqld console檢視出錯原因 server data di...

mysql資料庫中的方法 mysql資料庫基本方法

啟動 net start mysql 進入 mysql u root p mysql h localhost u root p databasename 列出資料庫 show databases 選擇資料庫 use databasename 列出 show tables 顯示 列的屬性 show c...