Sempervivum
Erfahrenes Mitglied
Update:
1. Inzwischen habe ich die Lösung für das Problem mit der virtuellen Spalte und dem Index gefunden, und zwar hier:
[MDEV-11553] Can't restore a PERSISTENT column that uses DATE_FORMAT() - Jira
Benutzt man DATE_FORMAT kann die locale ins Spiel kommen und die Sache inkonsistent machen. Lösung indem man die Locale explizit angibt, z. B.
2. Man kann jedoch das Ganze umgehen, indem man durchgängig, auch in der temp. Tabelle, DATETIME benutzt und dann mit DATE() auf das Datum reduziert. Dadurch konnte ich die Verarbeitungszeit um mehr als den Faktor 10 verringern, siehe hier:
MySQL: Optimize left join on formatted date
1. Inzwischen habe ich die Lösung für das Problem mit der virtuellen Spalte und dem Index gefunden, und zwar hier:
[MDEV-11553] Can't restore a PERSISTENT column that uses DATE_FORMAT() - Jira
Benutzt man DATE_FORMAT kann die locale ins Spiel kommen und die Sache inkonsistent machen. Lösung indem man die Locale explizit angibt, z. B.
Code:
ALTER TABLE visits ADD COLUMN datestr varchar(10) AS (DATE_FORMAT(visit_date, '%Y-%m-%d', 'de-DE')) VIRTUAL;
MySQL: Optimize left join on formatted date