0
MySQL에 4 개의 테이블이 있습니다. 예mysql select 문에서 4 개의 테이블을 조인하려면 어떻게해야합니까?
$select = $db->query("SELECT *
FROM ads
WHERE ad_pic='1'
AND ad_status = '1'
ORDER BY ad_id DESC LIMIT 0,4");
while ($fetch = $db->fetch($select)) {
$iquery = $db->query("SELECT *
FROM images
WHERE img_ads_id = '" . intval($fetch['ad_id']) . "'
AND img_status = '1'
LIMIT 1");
$thumb = $db->fetch($iquery);
$uselect = $db->query("SELECT *
FROM users
WHERE user_id = '".intval($fetch['ad_userid'])."'
AND user_status = '1'
LIMIT 1");
$ufetch = $db->fetch($uselect);
$cselect = $db->query("SELECT *
FROM category
WHERE cat_slug = '".safe_func($fetch['ad_category'])."'
LIMIT 1");
$cfetch = $db->fetch($cselect);
}
하나의 select 문에서 이러한 항목을 결합하는 방법을 알고 싶습니다.
ads table
ad_id ad_userid ad_category
-------------------------------
1 2 5
images table
img_id img_ads_id
-------------------------------
1 1
users table
user_id user_name
-------------------------------
2 John
category table
cat_id cat_name
-------------------------------
5 Vehicles
가입하려는 4 개의 테이블과 관련된 스키마 부분을 제공 할 수 있습니까? –
광고와 이미지간에 일대일 관계가 있습니까? 광고와 사용자간에? 광고와 카테고리간에? (나는 추측하고있다.) –
브라이언이 묻자, 우리에게 완전한 스키마를 제공하라. 각각의 테이블에있는 외래 키와 개인 키를 알고 이들이 어떻게 관련되어 있는지 알아야합니다. – coder