Пользовательский запрос SELECT с несколькими значениями метаданных (проблема с упорядочением)

У меня есть два настраиваемых мета значения, которые я использую для списка событий, и почти полностью работаю, кроме заказа. У меня две даты (event_date и event_enddate). Одна из них – дата начала, которая всегда присутствует, а другая – дата окончания, которая используется только тогда, когда это необходимо. Я создал запрос, в котором перечислены все даты, в которых любое из этих полей равно или больше сегодняшней даты, что отлично работает. Тем не менее, я хочу, чтобы все события были заказаны исключительно поле event_date. Как я могу это сделать? Я потратил весь день, пытаясь сделать это, и просто не могу это решить!

Вот мой код:

SELECT DISTINCT wposts.* FROM $wpdb->posts wposts LEFT JOIN $wpdb->postmeta wpostmeta ON wposts.ID = wpostmeta.post_id LEFT JOIN $wpdb->term_relationships ON (wposts.ID = $wpdb->term_relationships.object_id) LEFT JOIN $wpdb->term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id) WHERE ((wpostmeta.meta_key = 'event_enddate' AND wpostmeta.meta_value >= CURDATE()) OR (wpostmeta.meta_key = 'event_date' AND wpostmeta.meta_value >= CURDATE())) AND wposts.post_status = 'publish' AND $wpdb->term_taxonomy.taxonomy = 'category' AND $wpdb->term_taxonomy.term_id IN(15) AND wposts.post_status = 'publish' ORDER BY wpostmeta.meta_value ASC 

Solutions Collecting From Web of "Пользовательский запрос SELECT с несколькими значениями метаданных (проблема с упорядочением)"