Mysql
 sql >> Baza danych >  >> RDS >> Mysql

korzystanie z GROUP BY w mysql 8

Na podstawie Twojego pytania wygląda na to, że zapytanie działało poprawnie przed MySql uaktualnić. Ponieważ uaktualniłeś MySql , zastosowano ustawienia domyślne, co oznacza Only_Full_Group_By jest włączony. Dlatego też, jeśli chcesz wykonać zapytania, takie jak to, o którym mowa, w którym nieagregowane kolumny w Select lista nie znajduje się w group by klauzula, musisz wyłączyć Only_Full_Group_By .

Uruchom poniższą instrukcję i ponownie wykonaj zapytanie:

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

Ostrzeżenie:należy to zrobić tylko wtedy, gdy masz pewność, że inne nieagregowane kolumny na liście wyboru są unikalne dla każdego tnumber w przeciwnym razie otrzymasz losowe wiersze.

Poniższy cytat pochodzi z podręcznika MYSQL 8.0:

Aby uzyskać więcej informacji, Kliknij tutaj .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Porządkowanie wyniku MySQL ustawionego przez wartość MAX() innej tabeli

  2. Podział SQL używający 'nie istnieje' w mysql

  3. Coś podobnego do Hibernate w PHP?

  4. Model Laravela z POINT/POLYGON itp. przy użyciu wyrażeń DB::raw

  5. Jaka jest różnica wydajności w implementacjach podziału relacyjnego MySQL (IN AND zamiast IN OR)?