[英]How to join together these tables?
我有以下情況:
我有這樣一個查詢,即將兩個分別稱為VulnerabilityAlertDocumentId和CPE的差異表一起通過VulnerabilityAlertDocument_Cpe傳遞,該表以多對多關系綁定了兩個表:
SELECT CPE.* FROM VulnerabilityAlertDocument_Cpe VAD_CPE
INNER JOIN Cpe CPE ON VAD_CPE.CpeId = CPE.Id
WHERE VAD_CPE.VulnerabilityAlertDocumentId = 87926
此查詢工作良好,我獲得以下輸出:
Id Cpe SourceId vendor_id product_id
27975 cpe:/o:google:android:1.0 NVD 984 3967
27976 cpe:/o:google:android:1.1 NVD 984 3967
27977 cpe:/o:otherCPE NVD 111 2222
因此,如您所見,在此輸出中,我有兩個名為vendor_id和product_id的字段,它們直接將一條記錄綁定到兩個名為CpeVendor和CpeProduct的表中,這兩個表均具有以下列: id , nome和date_added
因此,現在的問題是我想在上一個查詢輸出中獲取nome列值。
我認為,對於上一個查詢的每個輸出記錄,我還必須加入CpeVendor和CpeProduct表,但是我不確定。 您能幫我解決這個問題嗎?
特納克斯
嘗試將兩個表添加到您的查詢:
SELECT CPE.*, p.nome as Product, c.nome as Vendor
FROM VulnerabilityAlertDocument_Cpe VAD_CPE
INNER JOIN Cpe CPE ON VAD_CPE.CpeId = CPE.Id
LEFT OUTER JOIN CpeVendor c ON CPE.vendor_id = c.vendor_id
LEFT OUTER JOIN CpeProduct p on CPE.product_id = p.product_id
WHERE VAD_CPE.VulnerabilityAlertDocumentId = 87926
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.