Здравствуйте.
Изучаю потихоньку mysql.
Смотрю left join.
SELECT *
FROM table1 i
LEFT JOIN table2 as c ON i.id = c.id
LEFT JOIN table3 as p ON c.id_t = p.id_t
Limit 1,5
На выходе, через heidySQL получаю все поля из трёх таблиц.
Делаю этот запрос через php. И вывожу на экран.
Array ( [0] => Array ( [id] => [id_t] => [number] => 1000007 [name] => Val [id_type] => 0 [id_on] => [full_name] => [article_general]
И получается, что если у таблицы 3 поле id -не существует, то в результирующем значении.
id окажется пустым. Так же и с другими полями. Для всех них есть значения в первой таблице, но при left join на выходе получается пустое значение. Я просто не понимаю что не так делаю. и почему left join берет значение полей из таблицы 2-3, которые не существуют, а не поле из первой таблицы.
Если выбирать из таблицы не *, а i.*, p.id as p_id и т.д. то тогда выведет как надо, но это совсем не вариант ((