tiny ‘n’ smart
database layer

Odkazy: dibi | API reference

Oznámení

Omlouváme se, provoz fóra byl ukončen

Problém s podmínkou WHERE <> (!=) NOT EQUAL

před 9 lety

Flipajs
Člen | 29

Ahoj… Už chvíli řeším jak zapsat v Dibi syntax pro něco jako WHERE item != ‚value‘

Mám něco jako

$this->template->registeredCompetitions = $this->competitions->findAll(NULL, array("login" => $login));

jinak findAll vypadá takto:

public function findAll($order = NULL, $where = NULL, $offset = NULL, $limit = NULL)
    {
        return dibi::query(
            "SELECT * FROM %n", $this->name,
            "%if", isset($where), "WHERE %and", isset($where) ? $where : array(), "%end",
            "%if", isset($order), "ORDER BY %by", $order, "%end",
            "%if", isset($limit), "LIMIT %i %end", $limit,
            "%if", isset($offset), "OFFSET %i %end", $offset
        )->fetchAll();
    }

Editoval Flipajs (16. 12. 2010 19:21)

před 9 lety

Milo
Nette Core | 1119

Jestli to řešíš pro celé pole $where tak první co mě napadá je dvojitá negace…

"%if", isset($where), "WHERE NOT ( %or )", isset($where) ? $where : array(), "%end"