我正在为多站点公司构建IT支持票务门户。 我无法理解JOIN,INNER JOIN,ON等等。
我有3张桌子:
Support_Ticket
包含Site_ID
,我已经从之前的查询中获得了Site_ID
。 所以我有Hull
,并且需要获得负责该站点支持的工程师的名称(字符串)。可以说Site_ID:1
是Site_Details
。
其他2个表:
Site_ID
:包含(其中包括)Site_Default_Engineer_ID
和Engineers
。Engineer_ID
:包含(其中包括)[Engineer_Display_Name
]和return [Engineers].[Engineer_Display_Name]
where
[Engineers].[Engineer_ID] = [Site_Details].[Site_Default_Engineer_ID]
(but first) return [Site_Details].[Site_Default_Engineer_ID] where
[Site_Details].[Site_ID] = [Support_Ticket].[Site_ID]
。我想要实现的是(伪代码!):
{{1}}
如果这有意义吗?!
答案 0 :(得分:4)
此查询应该有效:
SELECT support_ticket.something, engineers.engineer_display_name
FROM support_ticket
JOIN site_details ON ( site_details.site_id = support_ticket.site_id )
JOIN engineers ON ( engineers.engineer_id = site_details.site_default_engineer_id )
它将显示所有门票及其默认工程师。添加WHERE
- 子句以过滤要显示的故障单。
顺便说一句:JOIN
和INNER JOIN
之间没有区别。