mysql執(zhí)行時(shí)間為負(fù)數(shù)的原因分析
<?php
list($usec, $sec) = explode(' ', microtime());
$timer = (float)$usec + (float)$sec;
mysql_query($query, $active_db);
list($usec, $sec) = explode(' ', microtime());
$stop = (float)$usec + (float)$sec;
$diff = $stop - $timer;
?>
$stop 和 $timer都是轉(zhuǎn)化后得到的浮點(diǎn)數(shù),大多數(shù)情況下,echo $stop 和 echo $timer得到的結(jié)果用肉眼觀察是相同的,但是它們?cè)谟?jì)算機(jī)中的存儲(chǔ)并不相同,所以結(jié)果不為0,也有可能為負(fù)。
php手冊(cè)中提示:
浮點(diǎn)數(shù)精度:
顯然簡(jiǎn)單的十進(jìn)制分?jǐn)?shù)如同 0.1 或 0.7 不能在不丟失一點(diǎn)點(diǎn)精度的情況下轉(zhuǎn)換為內(nèi)部二進(jìn)制的格式。這就會(huì)造成混亂的結(jié)果:例如,floor((0.1+0.7)*10) 通常會(huì)返回 7 而不是預(yù)期中的 8,因?yàn)樵摻Y(jié)果內(nèi)部的表示其實(shí)是類(lèi)似 7.9999999999...。
這和一個(gè)事實(shí)有關(guān),那就是不可能精確的用有限位數(shù)表達(dá)某些十進(jìn)制分?jǐn)?shù)。例如,十進(jìn)制的 1/3 變成了 0.3333333. . .。
所以永遠(yuǎn)不要相信浮點(diǎn)數(shù)結(jié)果精確到了最后一位,也永遠(yuǎn)不要比較兩個(gè)浮點(diǎn)數(shù)是否相等。如果確實(shí)需要更高的精度,應(yīng)該使用任意精度數(shù)學(xué)函數(shù)或者 gmp 函數(shù)。
- MySQL日期數(shù)據(jù)類(lèi)型、時(shí)間類(lèi)型使用總結(jié)
- mysql 日期和時(shí)間函數(shù)
- mysql 日期和時(shí)間格式轉(zhuǎn)換實(shí)現(xiàn)語(yǔ)句
- mysql 顯示SQL語(yǔ)句執(zhí)行時(shí)間的代碼
- mysql 設(shè)置默認(rèn)的時(shí)間值
- mysql 時(shí)間轉(zhuǎn)換函數(shù)的使用方法
- mysql的日期和時(shí)間函數(shù)大全
- mYsql日期和時(shí)間函數(shù)不求人
- mysql時(shí)間戳轉(zhuǎn)成常用可讀時(shí)間格式的兩種方法
- mysql 卡死 大部分線程長(zhǎng)時(shí)間處于sending data的狀態(tài)
相關(guān)文章
SQL SERVER遞歸查詢(xún)的實(shí)現(xiàn)
本文主要介紹了SQL SERVER遞歸查詢(xún)的實(shí)現(xiàn),遞歸查詢(xún)是通過(guò)CTE來(lái)實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01MYSQL必知必會(huì)讀書(shū)筆記第四章之檢索數(shù)據(jù)
MySQL是一種開(kāi)放源代碼的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)。接下來(lái)通過(guò)本文給大家介紹MYSQL必知必會(huì)讀書(shū)筆記第四章之檢索數(shù)據(jù),感興趣的朋友一起學(xué)習(xí)吧2016-05-05MySQL8重置root賬戶(hù)密碼圖文教程超詳細(xì)講解
root賬戶(hù)為MySQL的超級(jí)管理員用戶(hù),擁有MySQL提供的所有權(quán)限,這篇文章主要介紹了MySQL8重置root賬戶(hù)密碼圖文教程,需要的朋友可以參考下2023-05-05mysql內(nèi)連接,連續(xù)兩次使用同一張表,自連接方式
這篇文章主要介紹了mysql內(nèi)連接,連續(xù)兩次使用同一張表,自連接方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12通過(guò)實(shí)例認(rèn)識(shí)MySQL中前綴索引的用法
這篇文章主要通過(guò)實(shí)例來(lái)介紹MySQL中的前綴索引,包括前綴在實(shí)際使用中需要考慮到的長(zhǎng)度問(wèn)題等,需要的朋友可以參考下2015-05-05MySQL?count(*),count(id),count(1),count(字段)區(qū)別
本文主要介紹了MySQL?count(*),count(id),count(1),count(字段)區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05CentOS下安裝mysql時(shí)忘記設(shè)置root密碼致無(wú)法登錄的解決方法
最近在給公司的內(nèi)網(wǎng)開(kāi)發(fā)用服務(wù)器裝系統(tǒng),然后裝mysql居然就花了一天,原因是因?yàn)楸救嗽贑entOS下安裝萬(wàn)mysql后,無(wú)法通過(guò)root進(jìn)入,因?yàn)榘惭b的時(shí)候,并沒(méi)有設(shè)置root密碼而導(dǎo)致無(wú)法登錄,通過(guò)查找了資料終于解決了,現(xiàn)在想方法分享給大家,有需要的朋友們可以參考借鑒。2016-11-11MySQL中開(kāi)啟和使用通用查詢(xún)?nèi)罩镜膶?shí)例教程
這篇文章主要介紹了MySQL中開(kāi)啟和使用通用查詢(xún)?nèi)罩镜膶?shí)例教程,包括其備份和關(guān)閉等基礎(chǔ)操作的例子講解,需要的朋友可以參考下2015-12-12MySQL數(shù)據(jù)類(lèi)型和常用字段屬性總結(jié)
這篇文章主要介紹了MySQL數(shù)據(jù)類(lèi)型和常用字段屬性總結(jié),本文總結(jié)了日期和時(shí)間數(shù)據(jù)類(lèi)型、數(shù)值數(shù)據(jù)類(lèi)型、字符串?dāng)?shù)據(jù)類(lèi)型等,需要的朋友可以參考下2014-09-09