INNER JOIN转换为数据类型int时出错



我正在考虑使用SSMS进行一个非常简单的JOIN,并始终遇到以下错误。我的理解是,我需要使用CAST功能,但我无法使其工作。

将nvarchar值"quagmire,glenn"转换为数据时转换失败类型int.

此错误表明我在尝试将字符串转换为int时出错。我相信这是因为Staff_ID和Manager字段是INT,我正试图用tblLUManager表中的名称值替换Manager。

我对SQL很陌生,但我读了一些书,并尝试了以下的一些变体,但都无济于事。

如有任何协助,我们将不胜感激。我渴望学习。

SELECT 
jobID, Manager, Datapoint, Description
FROM test.dbo.tblJoinTest
INNER JOIN tblLUManager ON tblJoinTest.Manager = cast(tblLUManager.name as nvarchar)

所附表格

您需要加入staff_id,而不是尝试cast管理器的名称。

SELECT 
jobID, 
Name as ManagerName
Datapoint, 
Description
FROM test.dbo.tblJoinTest
INNER JOIN tblLUManager 
ON tblJoinTest.Manager = staff_id;

最新更新