Mysql 此SQL查询的更好/备选措辞方式
写出以下查询的更好/更有效的方法是什么 当前SQL查询的工作做得很好,但我担心数据库变大时的处理时间Mysql 此SQL查询的更好/备选措辞方式,mysql,Mysql,写出以下查询的更好/更有效的方法是什么 当前SQL查询的工作做得很好,但我担心数据库变大时的处理时间 SELECT * FROM room JOIN catering ON room.room_id = catering.room_id WHERE capacity BETWEEN '$minCapacity' AND '$maxCapacity' AND room.room_id NOT IN (SELECT room_id FROM room_booking WH
SELECT *
FROM room
JOIN catering ON room.room_id = catering.room_id
WHERE capacity BETWEEN '$minCapacity' AND '$maxCapacity'
AND room.room_id NOT IN
(SELECT room_id
FROM room_booking
WHERE date_booked = '$us_date')
AND catering.grade = '$grade' ORDER BY room.capacity
您可以将
不在
中更改为不存在
。如果有大量数据可以提高性能:
SELECT *
FROM room
JOIN catering ON room.room_id = catering.room_id
WHERE capacity BETWEEN '$minCapacity' AND '$maxCapacity'
AND NOT EXISTS
(
SELECT
NULL
FROM
room_booking
WHERE
date_booked = '$us_date'
AND room.room_id=room_booking.room_id
)
AND catering.grade = '$grade'
ORDER BY room.capacity
您可以将
不在
中更改为不存在
。如果有大量数据可以提高性能:
SELECT *
FROM room
JOIN catering ON room.room_id = catering.room_id
WHERE capacity BETWEEN '$minCapacity' AND '$maxCapacity'
AND NOT EXISTS
(
SELECT
NULL
FROM
room_booking
WHERE
date_booked = '$us_date'
AND room.room_id=room_booking.room_id
)
AND catering.grade = '$grade'
ORDER BY room.capacity