C'est maintenant possible avec MySQL 8.0.17+
Quelque chose comme ça (non testé)
CREATE TABLE posts (
id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
tags JSON,
INDEX tags( (CAST(tags AS VARCHAR(32) ARRAY)) )
);
Utilisez-le de cette façon :
SELECT * FROM posts
WHERE JSON_CONTAINS(tags, CAST('[tag1, tag2]' AS JSON));
Plus de détails et d'exemples ici :https://dev.mysql.com /doc/refman/8.0/en/json.html