【问题标题】:Getting long variable/digit out of a MySQL and 'squashing' it从 MySQL 中获取长变量/数字并“压缩”它
【发布时间】:2010-06-15 18:21:38
【问题描述】:

假设我的数据库中有一个 10,000 位数字...

如果它被回显出来,对于观看者来说会很迟钝。

有没有办法只显示 100(前 100 个)?数字?

-要么使用 php,要么(Pref.)使用 MySQL 只获取前 100 个...

【问题讨论】:

    标签: php mysql digits


    【解决方案1】:

    在您可以显示这样的数字之前,MySQL 需要将如此大的数字存储为双精度数,或者您可以将其存储为字符串。实际上,双打只允许about 308 digits。如果将其存储为字符串,则可以使用子字符串和连接(带点)以任何您喜欢的精度将其转换为科学记数法。您可以计算字符串的长度以获取指数。当然你不能用数据库来做数学。

    为什么需要这种精度?

    【讨论】:

    • String 嗯好的,但我猜没有 mySQL 函数来获取前 100 个字符? - 你必须使用 php?
    • 更具体地说:选择 left(yourfield,100) as truncated from yourtable
    • 例如:SELECT * FROM mytable WHERE random field = '$randomvariable' 将变为:SELECT left (mytable,100) WHERE random field = '$randomvariable'?跨度>
    【解决方案2】:

    您为什么使用 PHP 来存储这些数字?什么样的网站需要这个功能?

    您可能希望使用 Perl、Python 或 Ruby 来处理这类事情。 Python 内置了对大数的支持。

    【讨论】:

    • 一:我只知道php :) 二::(
    • 你知道MySQL是否可以做这样的事情吗? - 获得前 100 名还是什么?
    • 他没有说他有一个网站使用这个功能。并非所有 PHP 应用程序都是网站。不要把这个当作批评,因为我根本没有答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 2020-12-01
    相关资源
    最近更新 更多