Sql 基于另一个表的条件结果更新表
我试图找出下面的sql语句的错误。我得到以下错误: 无法绑定多部分标识符“P1Totals.StudentTotals” 我做错了什么Sql 基于另一个表的条件结果更新表,sql,Sql,我试图找出下面的sql语句的错误。我得到以下错误: 无法绑定多部分标识符“P1Totals.StudentTotals” 我做错了什么 UPDATE StudentRegistration SET Year ='2016', Term = 'Term 1' where P1Totals.StudentTotals >='300' and P1Totals.StudentTotals <='400' 更新StudentRegistration 设定年份='2016', 术
UPDATE StudentRegistration
SET Year ='2016',
Term = 'Term 1'
where P1Totals.StudentTotals >='300'
and P1Totals.StudentTotals <='400'
更新StudentRegistration
设定年份='2016',
术语='术语1'
其中P1Totals.StudentTotals>='300'
和P1Totals.StudentTotals您不能使用P1Totals.
,因为它没有提到作为表别名。
在单个update语句中,不能给出表别名。add
UPDATE StudentRegistration
SET Year ='2016',
Term = 'Term 1'
from StudentRegistration
left join P1Totals on --your reference
where P1Totals.StudentTotals >='300'
and P1Totals.StudentTotals <='400'
更新StudentRegistration
设定年份='2016',
术语='术语1'
从学生注册
左键打开--您的引用
其中P1Totals.StudentTotals>='300'
和P1Totals.StudentTotals您有一个对表别名的引用,P1Totals
,但该表在任何地方都没有提及。从这个查询中不可能知道你想做什么。示例数据和所需结果,以及您正在使用的数据库的标记都会有所帮助。您使用的是哪种DBMS?博士后?神谕为什么要将数字存储为varchar
?在T-SQL(MS,Sybase)中,您可以尝试使用。请注意,您可能需要在两个表中加入一些学生id。我使用sql server 2008,我有两个表,studentregistration包含学生数据,而p1totals包含学生考试分数。我正在尝试为p1totals表中考试总分在300到400之间的所有学生更新studentregistration表。