sql-server - 更正我的 SQL 查询中的相关名称
问题描述
我有以下 SQL 查询,我想从我的 SQL 数据库中提取每个项目的计数及其名称,例如“FillingOption”。
我不断收到以下错误消息
Msg 1013, Level 16, State 1, Line 13 FROM 子句中的对象“school_to_classroom_teacher”和“school_to_classroom_teacher”具有相同的公开名称。使用相关名称来区分它们。
查询如下:
SELECT
COUNT(*) AS count,
Monday_Sandwich_Roll_Filling.FillingOption
FROM
#tempCustomer
INNER JOIN Monday_Sandwich_Roll_Filling
ON #tempCustomer.LunchMon=Monday_Sandwich_Roll_Filling.FillingOption
INNER JOIN school_to_classroom_teacher
ON #tempCustomer.teacherID= school_to_classroom_teacher.teacherID
INNER JOIN [teacherClassroom Table]
ON #tempCustomer.teacherID= [teacherClassroom Table].teacherID
inner join school_to_classroom_teacher
on [teacherClassroom Table].teacherID=school_to_classroom_teacher.teacherID
inner join SchoolTable
on SchoolTable.SchoolID
WHERE
(SchoolTable.mondayOn = 1)
AND school_to_classroom_teacher.schoolid = 1
AND([teacherClassroom Table].Available = 1)```
为凌乱的查询道歉,但它不喜欢WHERE 子句旁边的“ SchoolTable.SchoolID ”和查询的“ school_to_classroom_teacher ”部分。
我试过声明SchoolTable.SchoolID AS TEST
,但这不起作用。
有人有想法么。
解决方案
所以你基本上想要这样做(我删除了重复/多余的加入):
SELECT
COUNT(*) AS count,
Monday_Sandwich_Roll_Filling.FillingOption
FROM
#tempCustomer
INNER JOIN Monday_Sandwich_Roll_Filling
ON #tempCustomer.LunchMon=Monday_Sandwich_Roll_Filling.FillingOption
INNER JOIN school_to_classroom_teacher
ON #tempCustomer.teacherID= school_to_classroom_teacher.teacherID
INNER JOIN [teacherClassroom Table]
ON #tempCustomer.teacherID= [teacherClassroom Table].teacherID
and [teacherClassroom Table].teacherID=school_to_classroom_teacher.teacherID
inner join SchoolTable
on SchoolTable.SchoolID
WHERE
(SchoolTable.mondayOn = 1)
AND school_to_classroom_teacher.schoolid = 1
AND([teacherClassroom Table].Available = 1)
但是您上次加入时也缺少加入条件inner join SchoolTable
on SchoolTable.SchoolID
.....?
推荐阅读
- python - 根据熊猫中的某些特定条件拆分字符串
- angular - 角度:net::ERR_EMPTY_RESPONSE
- ember.js - 如何排除公用文件夹中的图像文件
- jquery - 表单提交失败后显示隐藏字段
- django - python3 不是用于创建 django runserver 的内部或外部命令、可运行程序或批处理文件
- python - 如何解决此错误“对象没有属性”
- google-chrome - WebdriverIO - 由于 chrome/chromedriver 错误,无法运行测试运行程序
- json - 通过 Ajax 错误和 JSON 数据遍历问题在 API 中发送 JSON 数据
- python - 在已知 XY 坐标时绘制像素和轮廓
- docker - 重构 docker 持久卷/挂载路径