我需要计算教授特定类(class)编号的许多教师的数量,按 schoolid
和类(class)分组。我收到以下错误:
Msg 8114, Level 16, State 5, Line 1. Error converting data type varchar to numeric.
我必须加入一个表以确保我可以提取 schoolid
。我对 SQL 比较陌生,我不知道我做错了什么。我似乎缺少一个基本的逻辑。感谢您提供的任何帮助。
如果您需要任何进一步的信息,请告诉我。谢谢。
SELECT
TC.COURSE
,COUNT(tc.teacherUserName) AS TotalTeachers
FROM Teacherclasses AS Tc
JOIN Sites AS S ON Tc.Schoolid = S.Schoolid
WHERE Schoolyear = '2015'
AND TC.Course IN (
17.0010000
, 23.0010000
, 27.0110000
, 36.0010000
, 41.0110000
, 45.0010000
, 23.1011070
, 27.1110070
, 23.1011080
, 27.1110080
, 23.0010010
, 27.0110010
, 41.0110010
, 45.0010010
, 55.0010050
, 23.9010000
, 27.9110000
, 41.9110000
, 45.9010000
, 23.8010000
, 27.8110000
, 41.8110000
, 45.8010000
)
GROUP BY TC.Course--, TC.SchoolID
最佳答案
Teacherclasses.Course
中有一些值无法转换为数字,但当您将其与 IN 子句中的数字进行比较时,它必须是可转换的。
更正 Teacherclasses.Course
中的值或在 IN 子句中的单引号之间传递参数。
关于sql - 计数将 varchar 转换为数字时的错误,也使用 IN 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25672848/