sql >> Databáze >  >> RDS >> Mysql

použití GROUP BY v mysql 8

Na základě vašeho dotazu se zdá, že dotaz před MySql fungoval správně vylepšit. Protože jste upgradovali MySql , bylo použito výchozí nastavení, což znamená Only_Full_Group_By je povoleno. Pokud tedy chcete provádět dotazy, jako je ten dotyčný, kde neagregované sloupce v Select seznam nejsou v group by klauzule, musíte deaktivovat Only_Full_Group_By .

Spusťte níže uvedený příkaz a proveďte dotaz znovu:

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

Upozornění:Toto byste měli provést pouze v případě, že jste si jisti, že ostatní neagregované sloupce ve vybraném seznamu jsou jedinečné pro každý tnumber jinak získáte náhodné řádky.

Následuje citace z manuálu MYSQL 8.0:

PRO více informací klikněte sem .



  1. vyberte z jedné tabulky, počítejte z jiné, kde je id propojeno

  2. MySQL DROP FOREIGN KEY Omezení

  3. Nelze odstranit nebo aktualizovat nadřazený řádek:selhalo omezení cizího klíče

  4. Proč byste měli omezit přístup uživatelů ke své databázi