我有两张桌子 1)live_booking表 2)company_car表
公司的汽车PK是car_id
。在预订表中有一个字段,其中car_id供用户输入。
问题是,当用户运行SQL查询时,如果预订表中没有car_id,则不返回任何结果。但是,如果car_id由用户显示在预订表中,则SQL查询显示所有结果
我希望如果预订表中没有car_id,那么查询会从预订表中获取剩余的字段,并将汽车字段显示为空白。
$bookingid = $_GET['id'];
$result = mysqli_query($con, "
SELECT
live_booking.booking_id, live_booking.booking_time, live_booking.booking_date, live_booking.id_mobile,live_booking.reservation_time, live_booking.car_id,
company_cars.car_driver, company_cars.car_make, company_cars.car_model,
customer.eu_name
FROM live_booking live_booking
inner join customer customer on customer.id_mobile = live_booking.id_mobile
inner join company_cars company_cars on company_cars.car_id = live_booking.car_id
WHERE booking_id = $bookingid");
答案 0 :(得分:0)
你可以使用mysqli_num_rows和if语句如果没有结果那么显示所有结果的其余部分
喜欢
$row_cnt = $result->num_rows;
if ($row_cnt == 0)
{
do this
}
else
{
do this
}
了解更多信息,请查看此内容 http://www.php.net/manual/en/mysqli-result.num-rows.php
加上选择正确的标签:)
答案 1 :(得分:0)
我只需要使用Left Join而不是inner join。 http://www.w3schools.com/sql/sql_join_left.asp