Custom SELECT Query With Multiple Meta Values (Ordering Problem)

I believe you can achieve this with WP_Query and avoid the custom SQL:

$today = date( 'Y-m-d' );
$args = array(
    'tax_query' => array(
        array(
            'taxonomy' => 'category',
            'field' => 'ID',
            'terms' => 15
        )
    ),
    'meta_query' => array(
        'relation' => 'OR',
        array(
            'key' => 'event_enddate',
            'value' => $today,
            'compare' => '>='
        )
    ),
    'meta_key' => 'event_date',
    'meta_value' => $today,
    'meta_compare' => '>=',
    'orderby' => 'meta_value_num'
);
$events = new WP_Query( $args );