3 개의 다른 테이블이있는 while 루프를 사용하여 데이터베이스의 특정 열을 에코하는 방법

무하마드 탄질 아르 샤드

3 개의 다른 테이블에서 다른 열을 선택하고 테이블 데이터에 표시하고 싶습니다.

방이라는 이름의 테이블이 있습니다. 그 점에서 Hotel_id 및 Room_Type_id라는 두 개의 외래 키가 있습니다. 방 테이블의 다른 열은 가격, 시설 등입니다. FK Room_Type_id를 사용하여 room_type 테이블에서 FK hotel_id 및 room_type_name을 사용하여 호텔 테이블에서 hotel_name을 가져오고 싶습니다.

나는 많은 두뇌 폭풍을 겪었고 조인을 사용하여 hotel_name과 room_type_name을 찾기 위해 별도의 쿼리를 작성했습니다. 아래 쿼리 사용

//Query to find hotel_name

$query = "SELECT hotels.hotel_name FROM hotels INNER JOIN room ON room.Hotel_Id=hotels.hotel_id";
$res = mysqli_query($connection, $query);
while ($data1 = mysqli_fetch_array($res)) {

//Query to find room_type_name:
 $sel_cus = "SELECT room_type.Room_Type_Name FROM room INNER JOIN room_type ON room.room_type=room_type.Room_Type_Id";
$res_cus = mysqli_query($connection, $sel_cus);
while ($data = mysqli_fetch_array($res_cus)) {

//Query to select price,and picture of room:
    $count=1; // counter to print serial numbers in table
$sel_cus = "select * from room Order by room_id ASC";
$res_cus = mysqli_query($connection, $sel_cus);
while ($row = mysqli_fetch_array($res_cus)) {

// here is code to print record in table

    <tbody>
            <tr>
            <td><?php echo $count;  ?></td>

            <td ><?php echo $data1['hotel_name'];?></td> 
                    <td><?php echo $data['Room_Type_Name']; ?></td>
                <td><?php echo $row['price']; ?></td>




  } // End Query to find hotel_name 


                                   } // End Query to find room_type_name:

} // end of Query to select price,and picture of room

위의 코드는 레코드 당 hotel_name 및 room_type_name을 반복하여 룸 테이블에 있습니다. 현재 룸 테이블에 2 개의 레코드가 있습니다. 레코드를 2 번 반복합니다.이 문제를 정렬하도록 도와주세요.

위 코드로 출력 :

Sr      hotel_name         Roomtype   price      picture 
 1       ABC                Delux       600       a.jpg
 2       ABC                Delux       600       a.jpg
 3       XYZ                 Super      8000      bcv.jpg
 4       XYZ                Super       8000      bcv.jpg

I want the output like below
Sr      hotel_name         Roomtype   price      picture 
 1       ABC                Delux       600       a.jpg
 2      XYZ                 Super      8000       bcv.jpg

도와주세요

scaisEdge

예를 들어 단일 쿼리를 사용하여 수행 할 수 있습니다.

SELECT hotels.hotel_name 
    ,  room_type.Room_Type_Name
    , room.price 
    , room.facilities
    , room.picture 
FROM hotels 
INNER JOIN room ON room.Hotel_Id=hotels.hotel_id
INNER JOIN room_type ON room.room_type=room_type.Room_Type_Id
ORDER BY hotels.hotel_name ,  room_type.Room_Type_Name, room.price 

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관