2017-03-20 102 views
0

此查詢適用。但是有沒有更好的方法來構建它?我認爲可以使用INNER Joins。但我不認爲我需要他們。MariaDB查詢構建

SELECT site.Name, vuln.Risk 
from site, vuln, system 
WHERE vuln.sysID=system.ID AND system.siteID=site.ID; 

回答

1

是的,你可以使用JOIN,例如:

SELECT s.name, v.risk 
FROM site s JOIN system sys ON s.id = sys.siteID 
JOIN vuln v ON v.sysID = s.ID; 
+0

謝謝! IDK爲什麼我在理解JOINS時遇到了問題 –

1

您可以使用顯式連接sintax(工作方式相同,但更加清晰)

SELECT 
     site.Name 
    , vuln.Risk 
FROM site 
INNER JOIN system on system.siteID=site.ID 
INNER JOIN vuln on vuln.sysID=system.ID; 
+0

謝謝! IDK爲什麼我有問題了解JOINS –

1

我肯定會推薦使用顯式連接語法,因爲他們現代化的和明確的。

select site.name, 
    vuln.Risk 
from site 
join system on vuln.sysID = system.ID 
join vuln on system.siteID = site.ID 
+0

謝謝! IDK爲什麼我有問題了解JOINS –