这让我抓狂,我确信它相当简单,但无法正确执行。
有一个表保存不同年份的利率值:
Ratevaluetable
Year Value A Value B Value C
2009 10 15 20
2010 12 18 22
2011 14 21 25
然后我有另一个人员表:
User Time Price
john 2010 value B
Tina 2009 Value C
Bill 2011 Value C
现在我需要连接两个表,以便获取 Price
列中的值,并替换为 Ratevaluetable
中的数据。
我可以按时加入,但我不知道如何加入Value
字段?
最佳答案
这对于您当前的数据库架构来说是不可能的。 Joins 通过匹配列值连接表;您建议在这里做的是将列值与列名称相匹配,这是不可能的。
可能可能的是:
Table ValueTypes:
Id Description
1 Value A
2 Value B
3 Value C
Table RateValueTable:
Year ValueTypeId Value
2009 1 10
2009 2 15
2009 3 20
Table User:
User Time ValueTypeId
john 2009 2
鉴于上述架构,您可以以明显的方式将 User
连接到 RateValueTable
。
关于mysql - 如何使用连接获取正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7698085/