Спасибо! Это, безусловно, поставило меня на правильный путь :)

аюсь запросить MySQL для ЗАКАЗА, а затем ГРУППА ... это вопрос, который часто возникает здесь, и я нашел ответ, который показался мне подходящим:Получение группы MySQL по запросу для отображения строки в этой группе с наибольшим значением

Однако я обнаружил, что он до сих пор не упорядочен перед группировкой.

В частности, я пытаюсь использовать настраиваемые типы записей Wordpress для группировки по полю метаданных под названием «дата», упорядоченному по дате публикации.

Вот мой запрос:

SELECT 
    `ID`, `date`, `post_date`, `date_rank`
FROM (
        SELECT
            `Post`.`ID`,
            `Post`.`post_date`,
            `PostData`.`meta_value` AS `date`,
            CASE
                WHEN @data_date = `PostData`.`meta_value` THEN @rowum := @rownum + 1
                ELSE @rownum := 1
            END AS date_rank,
            @data_date := `PostData`.`meta_value`
        FROM
            `".$this->wpdb->posts."` AS `Post`
        JOIN 
            `".$this->wpdb->postmeta."` AS `PostData`
            ON `Post`.`ID` = `PostData`.`post_id` AND `PostData`.`meta_key` = 'date'
        JOIN (SELECT @rownum := 0, @data_date := '') AS `vars`
        WHERE 
            `Post`.`post_type` = 'my_post_type'
            AND
            `Post`.`post_status` = 'publish'
        ORDER BY `Post`.`post_date` DESC
    ) AS `x`
WHERE date_rank = 1
ORDER BY `date` ASC

Желаемыми результатами являются сообщения для каждой «даты» (это мета-поле), с последним сообщением для этой «даты» согласно post_date.

Ответы на вопрос(1)

Ваш ответ на вопрос