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

Proč byste neměli zakázat ONLY_FULL_GROUP_BY

Bez přísnosti, kterou ONLY_FULL_GROUP_BY vynucuje, můžete:

  • neuvědomíte si, že máte špatný dotaz;
  • získávat nějaké sloupce, které nemají konkrétní význam;
  • výsledky, které dostáváte, nemusí být výsledky, které se objeví na jiném serveru nebo při příštím upgradu, nebo když se změní plán dotazů (přidaná/smazaná/aktualizovaná data).

Poslouchejte tedy ONLY_FULL_GROUP_BY . Je to důrazné varování, že váš dotaz není správný. Chyba jednoduše říká vaše GROUP BY klauzule je nekompatibilní se sadou vracených výsledků. Jiné databáze jej standardně vynucují a jejich uživatelé díky tomu píší lepší SQL.

Ignorování varování je jako weboví vývojáři, kteří chmod a+rwx protože nemohou zjistit oprávnění k souboru. Udělejte si čas na pochopení prostředí, ve kterém pracujete, a budete na tom lépe. A stejně tak bude další osoba, potenciálně vaše budoucí já, která se podívá na SQL.




  1. flask-login:nechápu, jak to funguje

  2. Jak přidám primární klíč auto_increment do databáze SQL Server?

  3. Upgradoval jsem SQL Server ODBC Driver a výkon byl negativně ovlivněn. Co můžu dělat?

  4. Seskupování klauzulí WHERE v Codeigniter