Autor Zpráva
Návštěvník
Profil *
Co znamená tato chyba, respektive jak vyřešit požadavek, když chci vrátit počet záznamů a k tomu hodnotu ze sloupce status protože očekávám pouze jeden záznam nebo žádný záznam? Dá se to?

Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause

  IF(MyID() > 0 || ($fromid !== null && MyID() >= 0))
      $count = $Results->SQL("SELECT count(*) as total, status FROM ".MT::POSTSTATS." WHERE source_user = '".MyID()."' AND target_user = '".$toID."'");
  print_r($count);

Moderátor Joker: Titulek „Chybová hláška“ nevystihoval podstatu dotazu. Příště zkus prosím vymyslet lepší.
Joker
Profil
Návštěvník:
Přesně jak říká ta chybová hláška:
Nelze míchat seskupené a neseskupené sloupce.

Takhle to udělat nejde, nicméně pokud „očekávám pouze jeden záznam nebo žádný záznam“, je to stejně úplně zbytečné.
Když to nic nevrátí, je žádný záznam, když to vrátí jeden záznam, je jeden záznam.
Kajman
Profil
Návštěvník:

Status lze také obalit agregační funkcí, např. min(), max(). Případně dát status do group by klauzule a testovat i počet vrácených řádků.
Návštěvník
Profil *
Joker:
Díky za info, už chápu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0