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

mysql, která hodnota má maximální počet

Podívejte se na toto... abyste se vyhnuli odkazování na stejnou skupinu výsledků, vytvořil jsem tabulku... měli byste ji po zpracování smazat nebo nahradit maxcounttemp za (SELECT what, loc, count(loc) howmany FROM maxcount GROUP BY what, loc) as tblX Snažil jsem se, aby byla DOČASNÁ, ale nemůžete ji použít v poddotazu, pokud je vnější tabulka stejná.

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);

doufám, že to pomůže... mějte na paměti, že bx nebo by jsou v tomto dotazu stejně možné...




  1. Jak definovat sloupec, který dokáže automatizovat psaní velkých písmen?

  2. Jak uložit velmi stará data do databáze?

  3. Je legální používat MySQL v komerčním prostředí?

  4. Jak mohu automaticky vytvořit e-mailovou adresu pro členy mých webových stránek?