Запрос CodeIgniter с LEFT JOIN и RIGHT JOIN дает результаты с конфликтами имен столбцов и нулевыми значениями из связаннPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Запрос CodeIgniter с LEFT JOIN и RIGHT JOIN дает результаты с конфликтами имен столбцов и нулевыми значениями из связанн

Сообщение Anonymous »

Я работаю с Codeigniter с базами данных mysql,
У меня есть модельная функция

Код: Выделить всё

public function get_all_data()
{
$this->output->enable_profiler(TRUE);
$years = $this->input->post('year');
$months = $this->input->post('month');
$exec_ids = $this->input->post('exec_id');
$query = $this->db->query("
SELECT *
FROM client_booking AS cb
RIGHT OUTER JOIN executive_client_unit_relation AS ecur ON cb.id = ecur.booking_id
LEFT OUTER JOIN new_invoice ON cb.id = new_invoice.booking_id
WHERE ecur.executive_id IN (" . implode(',', $exec_ids) . ")
AND MONTH(cb.booking_date) IN (" . implode(',', $months) . ")
AND YEAR(cb.booking_date) IN (" . implode(',', $years) . ")
");
return $query->result();
}
Сгенерированный этим SQL-запрос (как видно в профилировщике):

Код: Выделить всё

SELECT *
FROM client_booking AS cb
RIGHT OUTER JOIN executive_client_unit_relation AS ecur ON cb.id = ecur.booking_id
LEFT OUTER JOIN new_invoice ON cb.id = new_invoice.booking_id
WHERE ecur.executive_id IN (4,5,6)
AND MONTH(cb.booking_date) IN (1,2,3,4,5)
AND YEAR(cb.booking_date) IN (2013,2014)
Моя проблема в том, что значение booking_id установлено в NULL, когда я var_dump() результат этого запроса.
С другой стороны, когда я запускаю SQL в своем phpmyadmin, все идет хорошо, и я вижу booking_id.
PS: первичным ключом таблицы client_booking является id, который является booking_id для всех остальных таблиц.
Может ли кто-нибудь помочь мне решить эту проблему?

Подробнее здесь: https://stackoverflow.com/questions/236 ... umn-name-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»