mysql查询如果没有记录或记录.xx!= xx查询有问题

时间:2014-11-18 17:49:45

标签: mysql search

我有3个MYSQL表。

“villa”表有属性记录。 “villa_type”表包含属性类型的记录。 “villa_price”表格,包含日期,价格,房产ID和可用性栏目的每日价格。

我使用SQL接收所有数据,请将其与villa_type表连接以接收有关属性正常工作的其他信息,然后将表格与第3个表连接,以询问该属性是在该日期预订还是可用。 / p>

查询是这样的。

 SELECT villa.*, villa_type.tip as villatypename 
 FROM villa
 LEFT JOIN villa_type on villa_type.id = villa.type
 LEFT JOIN villa_price on villa_price.villaid = villa.id
 WHERE villa.lang = 1 
 AND villa.area = 1980
 AND villa.status = 1 
 AND villa.status2 = 1
 -- Problem starts here..............
 AND (villa_price.vdate = '2015-01-13' OR villa_price.vdate is null)
 AND (
       ((villa_price.condition != 2) AND (villa_price.condition != 3))
       OR (villa_price.condition is null)
     )

问题是:如果别墅有2015-01-13的记录且条件是2或3,我正确地没有列出那个别墅(这是我正在尝试做的),但是如果那个别墅有相同日期的记录,条件是1,它仍然没有列出(虽然它应该)。

我只想查看villa_price表,看看该别墅在给定日期的条件为2或3,并从结果中删除该别墅。

任何帮助或指南将不胜感激。非常感谢

0 个答案:

没有答案