Функция CONCAT () в списке полей SELECT - PullRequest
2 голосов
/ 23 декабря 2010

Я использую функции активной записи CodeIgniter, но не могу выбрать интересующие меня данные.

То, что я хочу выбрать:

CONCAT(t.field1, ' / ', t.field2) AS `finalValue`

Поэтому я добавляю следующее:

$this->db->select('CONCAT(t.field1, \' / \', t.field2) AS `finalValue`');

Но это сгенерированная строка запроса:

CONCAT(t.field1, `'` / ', `t`.`field2)` AS `finalValue`

Это ошибка?Я неправильно указываю это?

Ответы [ 2 ]

4 голосов
/ 23 декабря 2010

Вы можете фактически отключить механизм экранирования по умолчанию, который является источником странной проблемы при использовании функций MySQL, передав FALSE в качестве второго параметра метода select.

Помните, что вы должнызатем справьтесь с побегом, если вы сделаете это.

О, и вы можете использовать двойные кавычки, чтобы уменьшить все, что у вас происходит, спасаясь.

0 голосов
/ 23 декабря 2010

сделать это вместо этого?

$this->db->select("CONCAT(t.field1, ' / ', t.field2) AS `finalValue`");

I.E Двойные кавычки вокруг внешней стороны, чтобы избежать необходимости неприглядного побега

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...