php mysql查询房屋类型

时间:2017-10-09 07:22:38

标签: php mysql database

首先,我为问题的标题道歉,因为我不完全确定在mysql中调用这种查询。

好的我有一个大型数据库700,000 +包含海外房产/房地产列表的记录。

注意:我在实际的实时网站中使用mysql pdo和准备好的语句。

我有以下查询

$propertyType = 'House';
//// This is generated from a drop down with possible values of House, Apartment & Land

$sql = 'SELECT * FROM PropertyTable WHERE 
        PropertyType = $propertyTpye'

现在当该属性在数据库中列为房屋,公寓或土地时,此查询正常工作。我的问题是,数据库是从世界各地的多个房地产经纪人的几个xml供稿中填充的,这些房地产经纪人以不同的方式调用。

例如在英国,房屋被称为房屋,其中“房屋”可称为“别墅”,“城镇住宅”,“独立式房屋”,“城堡”,“豪宅”等。

然后公寓可以有“公寓”,“公寓”,“阁楼”等。

搜索数据库表的最佳解决方案是什么。我不想将所有这些选项放在下拉菜单中,因为它变为特定的并且不会返回足够的结果。

任何指针都会非常感激

1 个答案:

答案 0 :(得分:0)

您需要一个表(例如PropertyNames),它将每个属性名称变体与其唯一的属性类型名称相匹配。然后,您将使用如下查询:

SELECT distinct a.* from PropertyTable a JOIN PropertyNames b ON b.propertyName ='$propertyName' and a.propertyType = b.nameVariant

此处,$propertyName引用PropertyNames表中属性的明确名称,您将在下拉选项中使用该名称。