2016-07-28 58 views
0

我有一個問題,根據另一個表記錄值計算一個表中的列。因此,這裏的佈局:是/否計算基於其他表格記錄

tblContainers:

Container IsRented 
00-0033 Yes 
00-0044 No 

tblRentals:

Customer IsRenting Container 
Brian  Yes   00-0044 
Jake  No   00-0033 

所以tblContainers包含了所有的容器,tblRentals包含了所有公司租賃的歷史。正如你所看到的,這兩個表格中都引用了容器,以及租賃。因此,如果在tblRentals中列出的容器在IsRenting列中包含yes,則在tblContainers中,IsRented將切換爲yes。因此,在上面的示例中,在tblContainers中,對容器00-0033的IsRented將更改爲否,並且對00-0044的IsRented將更改爲是。

我發現其他人喜歡這個,但是,他們是基於sum的,我很新,對我來說這是如此光榮。我會參考下面的其他人,看他們是否幫助你們幫助我。

感謝您的幫助!

參考文獻:

Calculate a field's value based on multiple records in another table in Access DB

I need to calculate values for a record in a database based off of other values in other records

這最後一個是類似的,但只對同一個表,這不是穿越表。
Access Tables and Calculations

+1

什麼是你實際所需的輸出嗎?兩個表中的每一個都有租用的狀態,但是您想要選擇哪個版本? –

+0

蒂姆,我正在嘗試將tblContainers IsRented更改爲Yes或No,基於tblRentals IsRenting字段值。 –

+0

另外,tblRentals是一個HISTORY表,所以在tblRentals中的容器列中將會出現多個時間點,因爲同一個容器可能會在不同時間出現多次租用,因此可能會列出相同的容器。真的,我正在查看tblContainers的容器是否在tblRentals表中,如果是,是否有一行包含容器,並在IsRenting字段中顯示「是」...哇,我希望我沒有讓這種混淆。 –

回答

0

如果我理解正確的話,你想用一個update聲明以join

update tblContainers as c 
    inner join tblRentals as r on c.container = r.container 
set c.IsRented = r.IsRented 
+0

當我研究這個時,這就是我在加入語句時想到的東西。如果有兩行包含相同的容器,但是其中一個是「是」,另一個是「否」,這仍然有效嗎?如果發生這種情況,我會想要出現。 –

+0

這工作!我假設,因爲它更新從1開始的行,並將其工作到最後一行完美工作! 非常感謝! –