Pro dnešek jste problém vyřešili. Ale zítra, když spustíte stejný dotaz, dostanete jinou chybu.
Ve starších verzích MySQL nebo MariaDB byste pro price_available
dostali „libovolnou hodnotu“ když není GROUPing BY
to. To bylo fakticky někde mezi „špatnou praxí“ a „porušením norem“. Relativně nedávno přešla MariaDB, později MySQL, na „pouze full group by“. V té době ANY_VALUE()
vznikl pro MySQL, ale MariaDB zjevně upustila.
Staré řešení, které by mělo být bezpečné pro staré i nové verze, je použít MIN(price_available)
nebo nějakou jinou agregační funkci. (Pokud sloupec může mít NULL
, různé agregáty mohou nebo nemusí zpracovat NULL
způsob, který preferujete.)
Viz také ONLY_FULL_GROUP_BY
nastavení.