Предположим, у меня есть такой запрос:
SELECT *
FROM table
WHERE table.a = 23
AND table.b = 23
AND (23 - table.c)/23 > 0.2
Это может не иметь никакого смысла, потому что это всего лишь пример. Мой реальный запрос намного больше, чем этот. Как вы можете видеть, все значения, которые должны быть привязаны, равны.
Итак, как я могу использовать привязку данных CodeIgniter для этого запроса, если все ?
одни и те же данные?
Такие значения, как таковые в массиве, выглядят странно по коду:
$sql = "SELECT *"
." FROM table"
." WHERE table.a = ?"
." AND table.b = ?"
." AND (? - table.c)/? > 0.2";
$this->db->query($sql, array(23, 23, 23, 23);
Codeigniter, похоже, не предоставляет именованные привязки, поэтому обходным решением для всех значений является то же самое, что и использование array_fill:
array_fill(0, 5, 23);
Будет производить:
Array
(
[0] => 23
[1] => 23
[2] => 23
[3] => 23
[4] => 23
)