Próbuję określić kwerendę w moim modeluCodeIgniter na `where` i` or_where`
$this->db
->select('*')
->from('library')
->where('library.rating >=', $form['slider'])
->where('library.votes >=', '1000')
->where('library.language !=', 'German')
->where('library.available_until >=', date("Y-m-d H:i:s"))
->or_where('library.available_until =', "00-00-00 00:00:00")
->where('library.release_year >=', $year_start)
->where('library.release_year <=', $year_end)
->join('rating_repo', 'library.id = rating_repo.id')
Tak, mam kłopot jest z moim or_where
. Chcę, aby or
było ograniczone tylko do pola . Obecnie jednak otrzymuję wyniki z językiem niemieckim, którego nie chcę. W jaki sposób mogę ograniczyć mój filtr or_where
tylko do pola available_until
?
Tak to działa teraz, ale nie wiem dlaczego. Czy możesz wyjaśnić, proszę? Wiem, że 'false' zapobiega dodawaniu backticków do zapytania. Nie rozumiem jednak, w jaki sposób ma to wpływ na to zapytanie - nie jestem również pewien, jaki parametr "null" ma – garethdn
@garethdn Edytowałem swoją odpowiedź. –
Ta metoda działa, ale nie może być standardem dla ładnego kodu. Nie możesz używać niezamkniętej pharantesis w klauzulach where. –