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

Problem z funkcją agregującą MySQL

HAVING Klauzula służy do filtrowania grup wierszy. Odwołujesz się do min(a) i max(a) który (w przypadku braku GROUP BY klauzula) agregują wszystkie a wartości w tabeli, ale następnie użyj porównania z pojedynczym a wartość.

Więc który a? wartość, której ma używać MySQL? Wszystkie inne RDBMS, o których wiem, zgłaszałyby błąd w tym momencie, jednak MySQL na to pozwala. Z dokumentów

Więc w twoim przypadku z wyników, które otrzymujesz, wygląda na to, że skończyło się przy użyciu 1 jako wartość skalarna dla a ale to zachowanie nie jest gwarantowane i równie dobrze mogłoby użyć 2 lub jakikolwiek inny istniejący a wartość.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Typ danych SQL do przechowywania wersji kompilacji

  2. rozwijana lista php ajax

  3. Doctrine 2 mysql FIELD funkcja w kolejności według

  4. Rozwiązywanie problemów z replikacją MySQL:część druga

  5. AWS Aurora MySQL bezserwerowy:jak połączyć się z MySQL Workbench