如何在有/没有SQL的情况下进行汽车搜索,如Autocout24.de?
我对autoscout24.de中搜索引擎的实现感兴趣。这是一个可以出售/购买汽车的平台。每个汽车广告都有可以搜索的属性:品牌、价格、公里数、颜色等(总共有50多个不同的属性) 我对细节搜索特别感兴趣,它的工作原理如下:页面上显示所有可能的属性。在每个属性后面的括号中,如果选择了该属性,将有与新搜索匹配的汽车数量 示例:我将从空搜索标准开始 地产商:如何在有/没有SQL的情况下进行汽车搜索,如Autocout24.de?,sql,database-design,data-structures,Sql,Database Design,Data Structures,我对autoscout24.de中搜索引擎的实现感兴趣。这是一个可以出售/购买汽车的平台。每个汽车广告都有可以搜索的属性:品牌、价格、公里数、颜色等(总共有50多个不同的属性) 我对细节搜索特别感兴趣,它的工作原理如下:页面上显示所有可能的属性。在每个属性后面的括号中,如果选择了该属性,将有与新搜索匹配的汽车数量 示例:我将从空搜索标准开始 地产商: 宝马(100.000) 大众汽车(200.000) 福特(150.000) 属性颜色: 黑色(210.000) 银币(50000元) 白色
- 宝马(100.000)
- 大众汽车(200.000)
- 福特(150.000)
- 黑色(210.000)
- 银币(50000元)
- 白色(100.000)
- 您将如何使用SQL实现这种搜索
- 您将如何使用内存中的数据结构来实现它
- 还应支持范围查询(价格从X到Y的所有汽车)
- 查找具有当前搜索条件的所有车辆(例如,make Ford)
- 对于每个属性,请执行以下操作:查找与以前的搜索条件(“福特”)和所选属性的搜索条件匹配的所有汽车。将计数写在属性后面的括号中
这个算法很简单,因为它将执行1+N个查询(N=#属性)。没有人愿意这样做;-) 有一个属性表: +性质
- 身份证
- 头衔
- 价值观
- 计数
- 身份证
- 颜色
- 公里
count
值
<Properties>
<Property>
<Type>Color</Type>
<Value>White</Value>
<Count>1000</Count>
</Property>
</Properties>
颜色
白色
1000
我认为这被称为“”。该项目可能值得一看。它是一个基本代码
- 为汽车拥有的每个属性创建一个带有一个计数器的结果对象
- 逐个检查所有车辆,如果车辆与过滤器匹配,则在每个数字中添加一个
有这样的工具:查找“地图还原”、“弹性搜索”、“strom”…您可以访问此网站的数据库吗?如果没有,你是否打算从网站上刮去大量的数据?他们提供API吗?这是一个假设性问题吗?@难以捉摸:我无法访问该网站的数据库。我也不想把这些数据抹掉。我想建立一个类似的数据库,但有不同的数据(没有汽车)。我添加了一个“更新”部分。查询是非常动态的。如果添加一个属性(和运算符),则所有计数都会更改。您如何高效地查询它?只有在添加/更新/删除汽车时,您才能更新它。将其与人们进入属性页面的次数进行比较,您必须获取所有属性的
计数。