Задавайте вопросы, мы ответим
Вы не зашли.
Есть 3 таблицы с полем id, нужно выбрать все поля, в которых id равно какому-то числу, например 2.
Например:
tb1
id n
1 25
2 68
3 73
tb2
id n
1 65
2 12
3 10
tb3
id n
1 66
2 65
3 9
если выборка по id=2 должны получить 68 12 65
Помогите составить запрос. Уже полдня мучаюсь...
Неактивен
Есть два варианта:
Неактивен
Запятая это и есть синоним join
В данном случае лучше использовать union
Неактивен
Сделал так, не работает
SELECT v.value, v.id_attribute n.value, n.id_attribute
FROM goods_entity_varchar v
JOIN goods_entity_number n ON n.id_good=$key['id_goods']
WHERE v.id_good=$key['id_goods'] " ;
Неактивен
Так заработало, всем огромное спасибо!!!!
SELECT goods_entity_varchar.value, goods_entity_varchar.id_attribute, goods_entity_number.value, goods_entity_number.id_attribute
FROM goods_entity_varchar
LEFT JOIN goods_entity_number ON goods_entity_number.id_goods=1
WHERE goods_entity_varchar.id_goods=1 ";
Неактивен
Это вы плохо написали. Сделайте через union или несколько отдельных запросов к каждой таблице.
Неактивен
Да, позже разобрался, что не совсем то, что нужно.Сделал через отдельные запросы, а потом соединил полученные массивы.
Неактивен