Я попытался сравнить два столбца, которые не имеют данных одинакового типа в платформе Codeigniter, первый столбец - char
, а второй - integer
.Я использую PostgreSQL для этого случая.Если бы я использовал MySQL, я мог бы выполнить этот запрос без проблем.
...
->join(
"m_region_new c",
"a.column1= c.column2", "LEFT")
...
, но поскольку PostgreSQL очень чувствителен, я не смог бы сравнить эти два столбца, поскольку они имеют данные разных типов.Поэтому мне нужно добавить ::integer
в column2
, чтобы это выглядело так:
...
->join(
"m_region_new c",
"a.column1= c.column2::integer", "LEFT")
...
Но помощник по запросу Codeigniter делает атрибут ::integer
в качестве имени столбца.Результат синтаксиса запроса выглядит следующим образом.
... LEFT JOIN "m_region_new" "c"."column2::integer" ...
, в то время как правильный синтаксис для PostgreSQL такой:
... LEFT JOIN "m_region_new" "c"."column2"::integer ...
Ошибка выглядит следующим образом.
ERROR: column c.column2"::integer does not exist LINE 7: ...
Как я могу избежать атрибута ::integer
, чтобы помощник codeigniter не считал его как имя столбца?