Get stock by custom meta field on all Woocommerce variable products

The following function will give you an array with the calculated stock quantity from all product variations for each custom meta field “Brand” value, using WPDB Class (a SQL query):

global $wpdb;

$results = $wpdb->get_results( "
    SELECT pm.meta_value as brand, SUM(pm2.meta_value) as stock
    FROM {$wpdb->prefix}postmeta pm
    INNER JOIN {$wpdb->prefix}posts p
        ON pm.post_id = p.post_parent
    INNER JOIN {$wpdb->prefix}postmeta as pm2
        ON p.ID = pm2.post_id
    WHERE p.post_status="publish"
    AND p.post_type="product_variation"
    AND p.post_parent > 0
    AND pm.meta_key = 'Brand'
    AND pm2.meta_key = '_stock'
    AND pm2.meta_value != ''
    AND pm2.meta_value != 'NULL'
    GROUP BY pm.meta_value
");

// Display (example)
echo '<ul class="stock-by-brand">';

foreach ($results as $result ) {
    echo '<li><strong>' . $result->brand . '</strong>: ' . $result->stock . '</li>';
}

echo '<ul>';

Tested and works