我有一個名爲tbl_PO的表和另一個名爲tbl_PO_LineItems的表。在tbl_PO中,相關字段是'PO#'和'狀態'。 '狀態'字段有幾個選項,我們現在感興趣的是「關閉」。每個採購訂單都有很多訂單項,因此tbl_PO中的PO#和tbl_PO_LineItems中的PO#存在一對多關係。 tbl_PO_LineItems中有一個名爲'LineNum'的字段,它是訂單項編號。還有另外一個叫'代碼'的字段,它是PO#和LineNum的組合。我知道這是一個組合字段,但它使數據庫的其餘部分的數據流更加容易。如何根據父表中的值從子表中選擇項目?
在不同的表,稱之爲tbl_table3,我希望能夠沿着這個線路使用的SQL語句:
SELECT Code FROM tbl_PO_LineItems WHERE tbl_PO.Status = 'Closed'
的問題是,有從代碼到沒有直接的聯繫tbl_PO中的任何字段。我需要通過與該代碼關聯的PO#以從該PO#的tbl_PO中獲取狀態值。我怎樣才能做到這一點?我在JOIN命令中讀了一下,但我對它不太滿意。
任何幫助表示讚賞。
它獨特的領域,考慮它是每個訂單項的ID,只是我們選擇了命名約定,以便在多個其他表中選擇代碼時使用,因此我們知道它是什麼,因爲它是由PO#組成的。你也可以解釋你的代碼中發生了什麼?不知道t1和t2是什麼。 – Michael
@Michael't1'和't2'是表_aliases_。它們可以用來代替完整的表名,這可以使查詢更具可讀性。 –
語法:select aliasName.columnName FROM tableName aliasName; – akhilsk