搜索引擎 - 汽车之家的车型库的数据库设计以及多属性查询是如何实现的?
本文介绍了搜索引擎 - 汽车之家的车型库的数据库设计以及多属性查询是如何实现的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
解决方案
建立三个表,车型表、属性表、车型属性表
车型表car
id car
属性表 attr
id attr
车型属性 car_attr
c_id a_id data
这样无论有后期添加多少属性,都不用修改表结构
车型表和属性表就不做过多介绍了吧,分别记录不同车型和不同的属性类型
车型属性中
每一行对应:某一车型+某一属性+该属性值
现在比如我要找所有带天窗的车型,逻辑如下:
先去属性表找到天窗属性的id,用该ID(a_id)带入车型属性表中找到所有带天窗的车型
select id from attr
where attr = "天窗";
id = 2
select c_id from car_attr
where a_id = 2 and data = 1
c_id = 1,3,6,9
select car from car where id = ......
这篇关于搜索引擎 - 汽车之家的车型库的数据库设计以及多属性查询是如何实现的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文