SQL语句

时间:2014-04-30 20:10:06

标签: sql ms-access

检查此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;

2 个答案:

答案 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;