检查此SQL并找到错误。
我正在使用Microsoft Access。
这就是问题:
“对于每个花费超过6小时教学任何科目名单的学术人员,学术人员的姓氏,科目名称和小时数。”
Select A.LName, R.Subject ID, R.Number of hours
From AcademicStaff As A, Role As R
where Number of hours>6;
答案 0 :(得分:3)
SELECT
A.[LName],
R.[Subject ID],
R.[Number of hours]
FROM
AcademicStaff AS A, Role AS R
WHERE
R.Field1 = A.Field1,
R.[Number of hours] > 6
答案 1 :(得分:0)
首先,数据库对象名称中的空格不是允许的,因此在设计时确保表名不包含空格是一种很好的做法。在这种情况下,尝试将表格名称括在方括号[]之间。
同样取决于DBMS可能会保留一些单词,例如,单词role是一个保留的sql关键字,用于创建DCL语句的角色。在这种情况下,我不确定这是否会在Access db中引发错误。
您还需要指定“Number”列的来源。表别名或全表名称
尝试类似:
Select A.LName, R.[Subject ID], R.[Number of hours]
From AcademicStaff A, Role R
where R.[Number of hours]>6;