sql >> Databáze >  >> RDS >> Mysql

Formát čísla na zkrácené číslo

Pokud je máte jako čísla, můžete tuto funkci použít přímo.

function formatValue($size, $precision = 1)
{
    static $suffixes = array('', 'k', 'm');
    $base = log($size) / log(1000);

    return round(pow(1000, $base - floor($base)), $precision) . $suffixes[floor($base)];
}

Pokud je nemáte jako čísla, použijte PHP:neformátované peníze

Pro váš konkrétní případ můžete použít malý špinavý hack, ale nedoporučuji to, pokud máte více speciálních případů.

function formatValue($size, $precision = 1)
{
    static $suffixes = array('', 'k', 'm');
    $base = log($size) / log(1000);

    if ($base >= 5/3 && $base < 2) {
        return round(pow(1000, $base - floor($base)) / 100, $precision) . 'lakh';
    }

    return round(pow(1000, $base - floor($base)), $precision) . $suffixes[floor($base)];
}



  1. Index SQLite

  2. Jak odebrat sloupec v SQL Server pomocí T-SQL

  3. Pomalý dotaz při použití ORDER BY

  4. Jak vytisknout výsledek Oracle SQL do souboru ve Windows?