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

mysql, której wartość ma maksymalną liczbę

Sprawdź to... aby uniknąć odwoływania się do tej samej grupy wyników, utworzyłem tabelę... powinieneś ją usunąć po wykonaniu przetwarzania lub zamienić maxcounttemp na (SELECT what, loc, count(loc) howmany FROM maxcount GROUP BY what, loc) as tblX Próbowałem ustawić ją TYMCZASOWĄ, ale nie możesz jej użyć w podzapytaniu, jeśli zewnętrzna tabela jest taka sama.

CREATE TABLE `maxcounttemp` (
  `what` varchar(1) DEFAULT NULL,
  `loc` varchar(1) DEFAULT NULL,
  `howmany` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO maxcounttemp (
  SELECT what, loc, count(loc) howmany FROM maxcount GROUP BY what, loc
);

SELECT mct.what, mct.loc, mct.howmany
FROM maxcounttemp mct 
WHERE (mct.what, mct.howmany) IN (
  SELECT mct2.what, MAX(mct2.howmany) 
  FROM maxcounttemp mct2 
  WHERE mct2.what = mct.what 
  GROUP BY mct2.what
) GROUP BY (mct.what);

mam nadzieję, że to pomoże... pamiętaj, że bx lub by są równie możliwe w tym zapytaniu...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Utwórz tabelę w MySQL

  2. Używanie zapytania MySQL ze zmiennymi z C#

  3. Wyzwalaj połączenia w usuwaniu kaskadowym

  4. Najczęściej oglądane filmy w tym tygodniu

  5. Co oznacza operator :=w mysql?