두 테이블 인 "inventory"와 "inventory_type"이 있습니다. "inventory"테이블에는 그 이름과 유형이 저장되고 "inventory_type"테이블에는 RAM, CPU 등의 유형 이름과 정렬 순서가 저장됩니다. 전에 JOINS를 사용 해 본 적이 없으며 사용할 유형을 잘 모르겠습니다. 그러나 그 중 아무 것도 다음 코드로 작동하지 않는 것 같습니다.조인을 사용하여 두 개의 테이블 쿼리
아래 코드에서 "인벤토리"가 왼쪽 테이블이되거나 "inventory_type"이 왼쪽에 결합됩니까?
function getInventoryOptions($db, $default_value, $datacenter)
{
$query = "SELECT inventory.id, inventory.name, inventory_type.short_name
FROM inventory LEFT JOIN inventory_type
ON inventory.type = inventory_type.id WHERE inventory.datacenter = " . $datacenter . " ORDER BY inventory_type.sort_order ASC";
$result = mysql_query($query, $db);
echo '<option value="">None</option>';
if ($result)
{
while($row = mysql_fetch_array($result))
{
$id = $row["inventory.id"];
$name = $row["inventory.name"];
$type = $row["inventory_type.short_name"];
if ($default_value == $id)
{
echo '<option selected value="' . $id . '">' . $type . ": " . $name . '</option>';
}
else
{
echo '<option value="' . $id . '">' . $type . ": " . $name . '</option>';
}
}
}
}
'아무도 작동하지 않는 것'으로 무엇을 의미합니까? 쿼리가 정상적으로 보입니다. 데이터 샘플을 게시해야합니다. –
무엇이 오류입니까? –
$ result = mysqli_query ($ query, $ db) 직후에 print_r ($ result)을 사용하여 데이터 집합을 디버그하십시오. –