-
Notifications
You must be signed in to change notification settings - Fork 87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Chyba v suggest #100
Comments
Pošli sem pls strukturu tabulky (chci vidět sloupce) + sql dotaz. Grido používám na opravdu mnoho místech v projektu a tohle jsem zatím řešit nemusel. |
Jedná se o problém kdy máš např. dotaz na objednávky, posledních 10 objednávek má zákazník Jan Novák, a pak další lidé. Dotaz na suggest vezme limitem posledních 10 objednávek (kvůli limitu - a všechny se jménem Jan Novák - 1 zákazník) a tím pádem pokud napíši do suggest "Jan", napíše mi to jen jeden suggest právě z posledního Jana Nováka a ostatní to nehledá. Pokud je někde v tabulce další Jan, je ignorován. Snad jsem to napsal srozumitelně :) Dá se to opravit distinctem nebo groupem na suggest sloupec. |
Jo jasně, už chápu :) Já jsem raději pro DISTINCT co myslíš ty? |
Taky jsem to vyřešil distinctem, je to rychlejší a hezčí :) |
Náhodou řešení pro Doctrine nemáš? Chce to IMHO odstranit SELECT část vyklonovaného query builderu, ale netuším jak se to dělá. Pro DibiFluent je to takto: public function suggest($column, array $conditions, $limit)
{
$fluent = clone $this->fluent;
$fluent->removeClause('SELECT')->select("DISTINCT $column");
...
} |
Mám jen vlastní datasource PropelORM, nevím jestli to není v doctrine podobné - nepoužívám ho $modelCriteria->select($column)->setDistinct()->find(); |
Nemělo by být v suggest distinct na aktuální sloupec nebo group by? Protože pokud je v tabulce více stejných záznamů, tak suggest nabízí jen některé z nich podle limitu. Jedná se o chybu pravděpodobně ve všech datasources.
The text was updated successfully, but these errors were encountered: