1

When trying to create an entry which has a Tag-field in it, I got the following error. (Please note, when creating a entry in a channel that has NO Tag-field, I get no error).

SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'sv_dev.t.tag_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by:
SELECT `t`.`tag_id`, COUNT(e.tag_id) AS count FROM (`exp_tag_tags` t) LEFT JOIN `exp_tag_entries` e ON `e`.`tag_id` = `t`.`tag_id` GROUP BY `e`.`tag_id`

Additional info: Database server Server: Localhost via UNIX socket Server type: MySQL Server version: 5.7.12-0ubuntu1 - (Ubuntu) Protocol version: 10 Server charset: UTF-8 Unicode (utf8)

Web server Apache/2.4.18 (Ubuntu) Database client version: libmysql - mysqlnd 5.0.12-dev PHP version: 7.0.4-7ubuntu2.1

2

After google'ing this (and being a MySQL-n00b), I got an answer from Solspace that confirmed what I needed to do:

Hi Pontus,

I spoke with a developer here and mentioned that this has to do with MySQL 5.7 having SQL_MODE set to "only_full_group_by". If this is the particular issue, the only way around it would be disabling that by running this query in your database:

SET GLOBAL sql_mode = "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION";

Otherwise, there's nothing we can really do about the issue for Tag unfortunately.

Kelsey Martens Director of Software Operations

This worked for me, hope it helps people with similar issues.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.