tiny ‘n’ smart
database layer

Odkazy: dibi | API reference

Oznámení

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

Dibi fluent a závorky v podmínce where

před 4 lety

rossini
Člen | 26
+
0
-

Jakým způsobem vytvořit v Dibi Fluent ve „where“ závorky, viz tento dotaz:

SELECT *
FROM `zaznamy` AS `A` , `kategorie` AS `B`
WHERE `A`.`id_kat` = `B`.`id_kat` AND `B`.`souk` = 0 AND (`nazev` LIKE '%ahoj%' OR `nazev1` LIKE '%ahoj%' OR `popis` LIKE '%ahoj%')
ORDER BY id_zaz asc
LIMIT 20
OFFSET 0

Jde mi o ty ozávorkované OR…

Moc díky za nakopnutí.

před 4 lety

Milo
Moderator | 1035
+
0
-

Buď ručně:

$search = 'ahoj';

->where('
    [A.id_kat] = [B.id_kat]
    AND [B.souk] = %i', 0, '
    AND (
        [nazev] LIKE %~like~', $search, '
        OR [nazev1] LIKE %~like~', $search, '
        OR [popis] LIKE %~like~', $search, '
    )'
)

nebo z pole:

->where('
    [A.id_kat] = [B.id_kat]
    AND [B.souk] = %i', 0, '
    AND (%or)', array(
        'nazev%~like~' => $search,
        'nazev1%~like~' => $search,
        'popis%~like~' => $search
    )
)

Možností je ještě víc.