Nejste přihlášen(a)
Stránky: 1
Téma zavřeno
dibi 0b95624 released on 2010–02–24
sql, ktore vygeneruje serializovany datasource:
SELECT "vyrobca__id" AS id, "vyrobca__nazov" AS value
FROM (
SELECT
pneumatika_web.ks as pneumatika_web__ks,
pneumatika_web.cenabezdph as pneumatika_web__cenabezdph,
pneumatika_web.cenasdph as pneumatika_web__cenasdph,
pneumatika_web.cenasdph_skk as pneumatika_web__cenasdph_skk,
pneumatika_web.id_pneumatika as pneumatika_web__id_pneumatika,
pneumatika.id as pneumatika__id,
pneumatika.sap as pneumatika__sap,
pneumatika.id_dezen as pneumatika__id_dezen,
pneumatika_dezen.id as pneumatika_dezen__id,
pneumatika_dezen.id_vyrobca as pneumatika_dezen__id_vyrobca,
vyrobca.id as vyrobca__id,
vyrobca.nazov as vyrobca__nazov,
vyrobca.kod as vyrobca__kod,
vyrobca.typ as vyrobca__typ,
vyrobca.poradie as vyrobca__poradie,
vyrobca.id_logo as vyrobca__id_logo,
vyrobca.id_pozadie as vyrobca__id_pozadie,
vyrobca.aktivne as vyrobca__aktivne,
vyrobca.farba as vyrobca__farba,
vyrobca.skratka as vyrobca__skratka,
pneumatika_dezen.id_dokument as pneumatika_dezen__id_dokument,
pneumatika_dezen.id_subor as pneumatika_dezen__id_subor,
pneumatika_dezen.nazov as pneumatika_dezen__nazov,
pneumatika_dezen.unikatny_nazov as pneumatika_dezen__unikatny_nazov,
pneumatika_dezen.sezona as pneumatika_dezen__sezona,
pneumatika.id_skupina as pneumatika__id_skupina,
pneumatika.sirka as pneumatika__sirka,
pneumatika.oddelovac as pneumatika__oddelovac,
pneumatika.vyska as pneumatika__vyska,
pneumatika.priemer as pneumatika__priemer,
pneumatika.priemer_cislo as pneumatika__priemer_cislo,
pneumatika.li as pneumatika__li,
pneumatika.si as pneumatika__si,
pneumatika.prevedenie as pneumatika__prevedenie,
pneumatika.rozmer_skrateny as pneumatika__rozmer_skrateny,
pneumatika.rozmer_cely as pneumatika__rozmer_cely,
pneumatika_web.typ as pneumatika_web__typ,
pneumatika_web.helper as pneumatika_web__helper
FROM pneumatika_web
INNER JOIN pneumatika AS pneumatika ON pneumatika.id = pneumatika_web.id_pneumatika
INNER JOIN pneumatika_dezen AS pneumatika_dezen ON pneumatika_dezen.id = pneumatika.id_dezen
INNER JOIN vyrobca AS vyrobca ON vyrobca.id = pneumatika_dezen.id_vyrobca) t
Ak pouzijem na ziskanie pairs konstrukciu:
# $ds je hore uvereny DataSource
dibi::query($ds. ' group by id, value order by value')->fetchPairs('id','value');
vysledok je pole, kluc je ‚vyrobca__id‘ a hodnota je ‚vyrobca__nazov‘.
Ak pouzijem fluent konstrukciu:
$ds->toFluent()->groupBy('id, value' )->orderBy('value')->fetchPairs('id','value');
vysledok je spravny, dostanem pole vyrobcov, kde kluc je id a hodnota je nazov.
Mam pocit, ze sa nespravne serializuje ten DataSource, kde pri vycte stlpcov sa nepouzije ‚vyrobca__id‘ as id ale „vyrobca__id“ as id, co je potom samozrejme interpretovane SQL ako retazec a nie nazov stlpca.
Db je PostgreSql 8.3