我需要將php中的一個非常大的數字(30位數字)與2個數字進行比較。最佳做法是什麼?我嘗試使用浮動,但它不夠精確,我不知道在php中使用大數字的好方法。在php和sql中比較大數字
0
A
回答
2
您是否嘗試過使用字符串比較?只要確保每個數字填充零。
mysql> select "123123123123123123456456456"<"123123123123123123456456457";
+-------------------------------------------------------------+
| "123123123123123123456456456"<"123123123123123123456456457" |
+-------------------------------------------------------------+
| 1 |
+-------------------------------------------------------------+
Justed test this up to 200+ chars,works like a charm。 GMP或BC數學:
0
1
檢查bcdcomp功能
0
在PHP中處理大量通過以下兩種庫的實現。
我自己並沒有這樣做,所以它可能不正確,但我認爲你必須從GMP或BC Math取得字符串結果,並將其提供給查詢。確保你的數字存儲爲bigint。
Interestin事實:你可能會認爲BigInt有將被限制在20位,而你是對的,除了一個事實,即它有Mysql的魔術:
你總是可以存儲一個確切的整數值在BIGINT列中使用字符串進行存儲。在這種情況下,MySQL執行一個不涉及中間雙精度表示的字符串到數字的轉換。
0
如果他們非常大,我會比較他們甚至字符串。首先,如果一個比另一個長,它會贏。如果長度相同,則從左到右逐個比較 - 如果兩位數字不同,則具有較大數字的數字將勝出。這當然是正整數。
相關問題
- 1. 如何比較PHP中的大數字?
- 2. 比較大數字
- 3. DataMapper的比較字符串SQL和PHP
- 4. 在Javascript中比較大數字
- 5. 在SQL和SUM中比較
- 6. SQL大小比較
- 7. 在PHP中比較兩個數字
- 8. 比較php中的大數據集
- 9. PHP比較當年和去年數字
- 10. 比較整數和字符串PHP
- 11. MySQL和PHP,如何比較數字
- 12. 在PHP中比較數組
- 13. 在SQL中比較兩個大表
- 14. SQL與大小寫比較like和「=」
- 15. PHP和MySQL比較數據
- 16. 在Groovy中比較空和數字
- 17. 在SQL字符串比較
- 18. 在PHP中比較兩個SQL表格
- 19. 在SQL比較中比較空值
- 20. 在PHP數組中刪除逗號和字符串比較
- 21. oracle 11g sql比較大數值
- 22. 比較PHP中的浮動數字
- 23. 在php和mysql中比較DATETIME和time()
- 24. SQL SUM和比較
- 25. SQL比較數字字符串
- 26. 比較大型MySQL數據集與PHP
- 27. 查找比數組給定數字的比較大的數字
- 28. PHP和MS.NET比較
- 29. 比較在SQL
- 30. PHP日期與SQL比較
謝謝,像一個魅力工作 – user284584 2010-07-28 18:16:43