symphonycms/symphonycms

Mysql 5.7.23 Compatibility: ORDER BY clause is not in SELECT list

Closed this issue · 1 comments

Mysql 5.7.23
Affected Symphony version(s) : 2.7.7
PHP version(s) : 7.1

Normal datasource, with order by system modification date cannot be executed because system modification date is not in select statement.

MySQL Error (3065): Expression #1 of ORDER BY clause is not in SELECT list, references column 'zzz.e.modification_date_gmt' which is not in SELECT list; this is incompatible with DISTINCT in query: SELECT SQL_CACHE DISTINCT `e`.`id`, `e`.section_id,
                `e`.`author_id`, `e`.`modification_author_id`,
                `e`.`creation_date` AS `creation_date`,
                `e`.`modification_date` AS `modification_date`
                
            FROM `sym_entries` AS `e`
            
                LEFT JOIN
                    `sym_entries_data_230` AS t230_1
                    ON (e.id = t230_1.entry_id)
            
            WHERE 1
            
            AND `e`.`section_id` = 2
            
                    AND (t230_1.value IN ('Yes'))
                
            ORDER BY `e`.`modification_date_gmt` DESC
            LIMIT 0, 24 on 964 of file /Users/xxx/Sites/www.yyy.com/symphony/lib/toolkit/class.mysql.php

Note: I use MAMP, installing MAMP 5, installed a new mysql version + default GLOBAL.sql_mode =

ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION