看来我的 SQL 并没有限制基于price
.
在我之前的帖子SQL:帮助我优化我的 SQL中,人们表示我应该使用 LEFT OUTER JOIN。
SELECT homes.home_id,
address,
city,
state,
zip,
price,
photo_id,
photo_url_dir
FROM homes
LEFT OUTER JOIN home_photos ON homes.home_id = home_photos.home_id
AND primary_photo_group_id = home_photo_group_id
AND home_photo_type_id =2
AND display_status = true
AND homes.price BETWEEN 500000 AND 1000000
但是,它仍然显示价格 < 500000 的房屋
我不明白。当我有一个 WHERE 条件来精确限制该字段时,为什么上面的 SQL 会显示价格低于 500000 的房屋。
谢谢你的帮助。
我想做的事
PRICE
我想根据X 和 Y ... 或 > Z 之间的标准显示有和没有 home_photo 的房屋SQFT
。但是这些标准需要同时适用于那些有和homes
没有home_photo
它是否正确?
SELECT homes.home_id,
address,
city,
state,
zip,
price,
photo_id,
photo_url_dir
FROM homes
LEFT OUTER JOIN home_photos ON homes.home_id = home_photos.home_id
AND homes.primary_photo_group_id = home_photos.home_photo_group_id
AND home_photos.home_photo_type_id =2
WHERE homes.display_status = true
AND homes.price BETWEEN 500000 AND 1000000