Hiển thị 2 bảng trong 1 bằng cách sử dụng inner join query

emen

New Member
#1
Chào mọi người, mình muốn hiển thị một bảng mà bảng đó có 2 khóa ngoài. Bảng foodrestaurant có cột name. Mình đã thử code sau đây nhưng không biết làm thế nào để hiển thị name restaurant và name food khác nhau.
Mã:
$sql_select_food = "SELECT food.id,restaurant.name,food.name,food.restaurant_id,foodcategory.title from food INNER join foodcategory ON food.foodcategory_id=foodcategory.id INNER join restaurant ON food.restaurant_id=restaurant.id WHERE food.isActive = 1 ORDER BY food.updateDate DESC";
$result_select_food = mysqli_query($connection, $sql_select_food);
if (mysqli_num_rows($result_select_food) > 0) {
      while ($row_select_food = mysqli_fetch_assoc($result_select_food)) {
                        echo "
                            <tr>
                                <td>$row_select_food[name]</td>
                                <td>$row_select_food[name]</td>
                                <td>$row_select_food[title]</td>
                            </tr>
                ";
                    }
                }
 

Admin

Administrator
Thành viên BQT
#2
Bạn có thể dùng bí danh của cột:
Mã:
SELECT food.id AS food_id, restaurant.name AS restaurant_name, food.name AS food_name ...
Sau đó

  • $row_select_food['restaurant_name'] là name của restaurant,
  • $row_select_food['food_name'] là name của food,
  • v.v.
Lưu ý: sau AS là từ khóa tùy chọn.
 
Top