Witam. Otóż próbuję wyciągnąć dane z bazy ale w ten sposób, żeby były one bez powtórzeń.
Zastosowałem więc coś takiego:
Kod
$c = new Criteria();
        $c->addSelectColumn(self::ODBIORCA);
        $c->add(WiadomoscPeer::NADAWCA, $id, Criteria::EQUAL);
        $c->addDescendingOrderByColumn(self::NADAWCA);
        $c->setDistinct();
        return BasePeer::doSelect($c);

No i problem polega na tym, że gdy wyciągnę te dane, to mam dostęp tylko do pola ODBIORCA. Nie mam nawet dostępu do rekordów powiązanych z tym polem (kolumna ODBIORCA jest kluczem obcym). W phpadmin próbowałem zmienić zapytanie i zamiast:
Cytat
SELECT DISTINCT Wiadomosc.ODBIORCA FROM `Wiadomosc` WHERE Wiadomosc.NADAWCA=2 ORDER BY Wiadomosc.DATA_WYSLANIA ASC

wpisałem
Cytat
SELECT DISTINCT Wiadomosc.odbiorca FROM `Wiadomosc` WHERE Wiadomosc.NADAWCA=2 ORDER BY Wiadomosc.DATA_WYSLANIA ASC

(różni się tylko wielkością liter)
Wynikiem pierwszego zapytania jest tabela z napisanymi kluczami (tylko), zaś w drugim tabela z napisanymi kluczami i mogę na nie kliknąć, co przenosi mnie do rekordu powiązanego z tym polem. W związku z tym jest jakiś sposób abym po pierwsze miał dostęp do wszystkich pól, a powtarzanie sprawdzało by mi tylko po wybranej kolumnie, a po drugie abym miał dostęp do instrukcji zapisanej w temacie?

Ok, już mam zamierzony rezultat:

Kod
$c = new Criteria();
        $c->add(WiadomoscPeer::NADAWCA, $id, Criteria::EQUAL);
        $c->add(WiadomoscPeer::USUNIECIE_NADAWCA, '0');
        $c->addAscendingOrderByColumn(self::DATA_WYSLANIA);
        $c->addGroupByColumn(WiadomoscPeer::ODBIORCA);
        return WiadomoscPeer::doSelect($c);