假设我有以下表格:
Cars
--------
ID Make Model Version
1 Honda Accord v1
2 Honda Civic v1
3 Honda Odysey v1
1 Honda AccordLX v2
1 Honda AccordEX v3
CarProperties
-------------
CarID key value Version
1 color red v1
1 doors 4 v1
2 color blue v1
2 doors 2 v1
3 color black v1
1 color blue v2
1 color green v3
Versions
-----------
ID Status
v1 Approved
v2 Pending
v3 Approved
基本上,我有一个条目/属性类型模式,我正在尝试对其进行版本管理。
如何查询此项以始终获得具有所有属性的最新批准版本的汽车?请注意,某些属性可能不会在特定版本中更新。ie:在下面的示例中carid:1 is
Honda AccordEX color:green doors:4
有些数据来自v3,有些数据来自v1。
这听起来像是有一个完善的模式来管理这类数据。有人能给我指一下正确的方向吗?
1条答案
按热度按时间polkgigr1#
我认为:
会起作用,相当不错,但坦率地说还不清楚。
也就是说,你的数据模型很奇怪。您的行具有相同的id,但属性正在更改(为什么在CarProperty中没有make和model?)。
您的carproperty表是(某种)eav,但是有一个显然不需要的复制版本字段。
我认为您真的需要修改您的数据模型并将其规范化一点。