Запрос IN (2,3,4) с помощью Kohana ORM - PullRequest
1 голос
/ 01 декабря 2011

Я пытаюсь сделать следующее mysql с Kohana ORM:

SELECT column_id FROM tables WHERE column_id IN (2, 3, 6)

Как мне это сделать?

Ответы [ 3 ]

2 голосов
/ 01 декабря 2011

Вы можете использовать следующий синтаксис в kohana ORM:

in()

Создает IN-часть запроса.
Имеет три параметра:
1. соответствующий столбец
2. массив или строка значений для сопоставления (логическое значение),
3. вместо этого создать предложение NOT

$db->in('title', array(1,2,3,4,5));

Создает: title IN ('1','2','3','4','5')

1 голос
/ 01 декабря 2011

Если tables - это имя вашей таблицы, попробуйте что-то вроде

$rows = ORM::factory('tables')->in('column_id', array(2, 3, 6))->find_all();


Поскольку in() не работает для вас через ORM, это должно работать в промежутке времени:

$rows = DB::select()->from('tables')->where('column_id', 'IN', array(2, 3, 6));
0 голосов
/ 02 декабря 2011

Завершено с помощью:

->and_where('column_id', 'in', $args())

Решили придерживаться методов db ORM вместо конструкторов запросов базы данных kohana.

...