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

Jak vypočítat velikost z mého dotazu MySQL?

Pokud správně rozumím vaší otázce, ajreal již poskytla řešení na tuto otázku StackOverflow . Citováno:

Získáte tak velikost vašeho dotazu v bajtech, děleno 1024 pro kilobajty a znovu pro megabajty.

Upravit: Pokud přesto stahujete celou sadu výsledků zpět do PHP a chcete znát její velikost, můžete ji vypočítat v PHP pomocí něčeho takového:

<?php

$data = [
    [
        'item' => 'Apple',
        'type' => 'fruit',
        'in_stock' => true
    ],
    [
        'item' => 'Biscuits',
        'type' => 'confectionery',
        'in_stock' => false
    ],
    [
        'item' => 'Milk',
        'type' => 'dairy',
        'in_stock' => true
    ],
];


function get_array_size(&$array)
{
    $size = 0;

    foreach ($array as $key => $value) {
        if (is_array($value)) {
            $size += get_array_size($value);
        } else if (is_string($value)) {
            $size += strlen($value);
        } else if (is_bool($value)) {
            $size += 1;
        } /* else if ( some other type ) {

        } */
    }

    return $size;
}

echo get_array_size($data); // Outputs 43

To pro vás může nebo nemusí být přijatelné v závislosti na vašem případu použití. Pokud chcete měřit fyzické bajty na drátu, pravděpodobně to nebude dostatečně přesné.




  1. Jaká je délka řetězce id relace PHP?

  2. Připojení Google Data Studio a AWS MySQL SSL

  3. Jak zkombinovat téměř stejnou položku pomocí SQL?

  4. CHYBA 1064 (42000) v MySQL