From 0f07724585d64d26059483a329ec5db2bcddee38 Mon Sep 17 00:00:00 2001 From: Franzz Date: Sat, 1 Jun 2024 17:24:22 +0200 Subject: [PATCH] Add NOT IN operator --- inc/Db.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/inc/Db.php b/inc/Db.php index 59fb4ce..62fa084 100644 --- a/inc/Db.php +++ b/inc/Db.php @@ -586,7 +586,8 @@ class Db extends PhpObject { if(is_array($asConstraints)) { - if(array_key_exists('constOpe', $asInfo) && array_key_exists($sField, $asInfo['constOpe']) && $asInfo['constOpe'][$sField]=='BETWEEN') { + $sConstOpe = $asInfo['constOpe'][$sField] ?? ''; + if($sConstOpe == 'BETWEEN') { //Between $asSelection[$sField] = $asConstraints['from'].' AND '.$asConstraints['to']; $asInfo['constOpe'][$sField] = " BETWEEN "; @@ -594,7 +595,7 @@ class Db extends PhpObject else { //Multiple values (IN) $asSelection[$sField] = "(".implode(', ', $asConstraints).")"; - $asInfo['constOpe'][$sField] = " IN "; + $asInfo['constOpe'][$sField] = ($sConstOpe=='NOT IN')?" NOT IN ":" IN "; } } elseif(!array_key_exists('constOpe', $asInfo) || !array_key_exists($sField, $asInfo['constOpe'])) $asInfo['constOpe'][$sField] = " = ";