在Access中创建可写的多表选择查询

时间:2016-04-20 00:31:10

标签: sql ms-access

我有两个具有以下架构的表

表1 -

id, Serial Code,  Hours   
xxxx-aa, 1
xxxx-bb, 2
yyyy-aa, 1

表2 -

Stage , Description 
aa, foo
bb, bar

现在我的加入是这样的。

SELECT x.*, y.Description
FROM table1 x LEFT JOIN
     table2 y
     ON MID(serial, 6, 2) = y.stage
这给了我渴望的结果。但是,它只是可读的。我知道如果我将表1中的外键分开,那么我可以创建一个可写查询,因此加入条件是

SELECT x.*, y.Description
FROM table1 x LEFT JOIN
     table2 y
     ON x.stage = y.stage

但有没有更好的方法来创建一个可写的查询而没有.. un-normalize ..表1?

感谢。

1 个答案:

答案 0 :(得分:1)

一种方法是在表1中创建一个名为[stage]的计算列,并将其定义为MID(serial,6,2)。当您填写表格时,此列会自动填充,并允许您简单地查询它,就好像您未正常化"表1。