如何在2个表中获得结果

我有2张桌子。 一个叫做预订,另一个叫做房间。 预订中的列包括:RoomID,startdate,enddate,customerId。 房间中的列是:RoomID,大小。

我想从预订表中选择一行,其中日期在startdate和enddate之间,并且无论我作为参数传递的是什么大小都相等。 例如:

我想在2010-01-31和2010-02-25之间进行选择,其中size = Large。

EDIT =这就是我String sqlStatement = "SELECT StartDate, EndDate FROM Booking between " + startD + ", " + endD;String sqlStatement = "SELECT StartDate, EndDate FROM Booking between " + startD + ", " + endD;

使用基本的INNER JOIN来实现这一目标。

 SELECT b.* FROM booking b INNER JOIN room r USING(RoomID) WHERE @date_input BETWEEN startdate AND enddate AND size = @size_input; 

@date_input@size_input更改为您的实际输入。

试试这个代码

 SELECT booking.* FROM booking JOIN room USING(RoomID) WHERE column_name BETWEEN startdate AND enddate AND size = @size_input;