为什么不运行此SQL语句

Cel*_*tas 1 t-sql sql-server

SELECT * FROM agency
INNER JOIN TUser
[agency].[dbo].[Matrix_Branch_ID]=[TUser].[dbo].[client_id]
Microsoft SQL Server Managment Studio gives me:
Run Code Online (Sandbox Code Playgroud)

SQL Server Management Studio给了我:

消息170,级别15,状态1,行3
行3:"."附近的语法不正确.

编辑

修复语法错误后

SELECT * FROM agency
INNER JOIN TUser
ON dbo.agency.Matrix_Branch_ID=dbo.TUser.client_id
Run Code Online (Sandbox Code Playgroud)

SQL Server Management Studio现在给我:

Msg 208,Level 16,State 1,Line 1
无效的对象名称'agency'.
消息208,级别16,状态1,行1
无效的对象名称'TUser'.

mar*_*c_s 8

如果您在SSMS中运行它 - 您是否在正确的数据库中; 包含这两个表的那个?

在此输入图像描述

当查询窗口处于活动状态时,您可以看到当前的数据库 - 包括工具栏上的下拉列表以及查询窗口的页脚.


Con*_*rix 5

您缺少ON关键字请参阅FROM中<joined table>语法(Transact-SQL)

<joined_table> ::=  {
   <table_source> <join_type> <table_source> ON <search_condition> 
   | <table_source> CROSS JOIN <table_source> 
   | left_table_source { CROSS | OUTER } APPLY right_table_source 
   | [ ( ] <joined_table> [ ) ]  }
Run Code Online (Sandbox Code Playgroud)

另外,[dbo]与什么我相信是表和字段的名称是错误的.请参阅将标识符用作对象名称

这应该工作

SELECT * FROM agency
INNER JOIN TUser
ON [agency].[Matrix_Branch_ID]=[TUser].[client_id]
Run Code Online (Sandbox Code Playgroud)