TSQL INNER JOIN

时间:2012-07-11 10:57:26

标签: sql sql-server tsql

我正在为多站点公司构建IT支持票务门户。 我无法理解JOIN,INNER JOIN,ON等等。

我有3张桌子:

  • 首先Support_Ticket包含Site_ID,我已经从之前的查询中获得了Site_ID

所以我有Hull,并且需要获得负责该站点支持的工程师的名称(字符串)。可以说Site_ID:1Site_Details

其他2个表:

  • Site_ID:包含(其中包括)Site_Default_Engineer_IDEngineers
  • 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}}

如果这有意义吗?!

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 - 子句以过滤要显示的故障单。

顺便说一句:JOININNER JOIN之间没有区别。