2012-03-17 43 views
0

我试图构建两个表中选择数据的SQL查询,但它似乎并不奏效:问题构建SQL联接查询

SELECT DISTINCT name,$price 
FROM room 
WHERE capacity>=$partySize 
JOIN room_booking ON room.room_id=room_booking.room_id 
WHERE date_booked<>'$us_date'; 

我在做什么错?

+0

有什么问题?你不喜欢用来打印结果集的字体?或房间的名称是不是拼写正确?认真地说,如果你不说出它是什么的话,你希望如何解决你的问题? – mfeingold 2012-03-17 22:39:57

+0

我想我已经把错误的顺序SQL查询。 – methuselah 2012-03-17 22:41:16

回答

2

下移WHERE子句的底部:

SELECT DISTINCT name,$price 
FROM room 
JOIN room_booking ON room.room_id=room_booking.room_id 
WHERE date_booked<>'$us_date' AND capacity>=$partySize 
2

肯定阅读一些SQL教程。在一个查询中不能使用两个WHERE条件:

SELECT DISTINCT name,'$price' 
FROM room 
JOIN room_booking ON room.room_id=room_booking.room_id 
WHERE date_booked<>'$us_date' AND capacity>='$partySize'; 

此外,查询中的变量应引用。

2

尝试

SELECT DISTINCT r.name,$price 
FROM room r, room_booking b 
WHERE r.capacity>=$partySize 
and r.room_id=b.room_id 
and r.date_booked<>'$us_date'; 

什么是$价格是多少?这是一个价值吗?如果变量尝试r $价格