Help with a $wpdb MySQL Query

is this what you’re after? Using the “Relation” for the Meta Query, you can select multiple Meta Keys. You can change the “Compare” to any of the operations available for that function. (From the Codex) compare (string) – Operator to test. Possible values are ‘=’, ‘!=’, ‘>’, ‘>=’, ‘<‘, ‘<=’, ‘LIKE’, ‘NOT LIKE’, ‘IN’, ‘NOT IN’, ‘BETWEEN’, ‘NOT BETWEEN’, ‘EXISTS’ and ‘NOT EXISTS’. Default value is ‘=’.

// WP_Query arguments
    $args = array (
            'post_type'          => 'your-post-type',
                'meta_query'          => array(
                'relation' => 'AND', 
             array(
                 'key'       => 'colours_%_colour',
                 'value'     => 'Red',
                 'compare'   => 'LIKE',
                    ),

             array(
                 'key' => 'colours_%_design_style',
                 'value' => 'Plain',
                 'compare' => 'Like'
                    ),
                 ), 
             );

// The Query
$query = new WP_Query( $args );

// The Loop
if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
        $query->the_post();
        // do something
    }
} else {
    // no posts found
}

// Restore original Post Data
wp_reset_postdata();