Nella versione 5.7-ish è stata apportata una modifica a> dove ora, per impostazione predefinita, rifiuterà le query in cui aggreghi utilizzando una funzione (sum
, avg
, max
, ecc.) nel SELECT
clausola e non inserire i campi non aggregati nel GROUP BY
clausola. Questo comportamento è parte integrante di ogni altro RDBMS e MySQL sta finalmente saltando a bordo.
Hai due opzioni:
- Puoi modificare le impostazioni di MySQL per ripristinare il vecchio comportamento per consentire query non eccezionali come questa. Le informazioni sono disponibili qui
- Puoi correggere la tua richiesta
L'opzione 2 sarebbe simile a:
SELECT id, password, COUNT(id) AS count FROM users WHERE email = :email GROUP BY id, password LIMIT 1