更新组合起来的表的内容,提示错误。我上代码,各位帮忙改下,谢谢!
update (select Course.*,Colleges.*,Majors.*,ClassTime.*,ClassAddress.*  
from Colleges,Majors,Course,ClassTime,ClassAddress 
where Course.Course_college=Colleges.co_no 
and Course.Course_major=Majors.Ma_no 
and Course.Course_time=ClassTime.Time_no 
and Course.Course_address=ClassAddress.Address_no) 
set Address_state=0 where Course_no='KC0001'

解决方案 »

  1.   

    update 某表
    set Address_state=0 
    from Colleges,Majors,Course,ClassTime,ClassAddress 
    where Course.Course_college=Colleges.co_no 
    and Course.Course_major=Majors.Ma_no 
    and Course.Course_time=ClassTime.Time_no 
    and Course.Course_address=ClassAddress.Address_no
    and Course_no='KC0001'
      

  2.   

    某表是?我是想更新组合起的那个新表中的数据。
    update后面括号里的是组合起的新表
    select Course.*,Colleges.*,Majors.*,ClassTime.*,ClassAddress.*  
    from Colleges,Majors,Course,ClassTime,ClassAddress 
    where Course.Course_college=Colleges.co_no 
    and Course.Course_major=Majors.Ma_no 
    and Course.Course_time=ClassTime.Time_no 
    and Course.Course_address=ClassAddress.Address_no
      

  3.   

    把你的结果集,用into aa重新放到你创建的新表aa中,最后直接操作aa,试一试?
      

  4.   

    楼主要的是这个吧:
    select (case when Course_no='KC0001' then 0 else Address_state end) as Address_state,
    --下面查询的列中,去掉 Address_state 列
    Course.*,Colleges.*,Majors.*,ClassTime.*,ClassAddress.*  
    from Colleges,Majors,Course,ClassTime,ClassAddress 
    where Course.Course_college=Colleges.co_no 
    and Course.Course_major=Majors.Ma_no 
    and Course.Course_time=ClassTime.Time_no 
    and Course.Course_address=ClassAddress.Address_no
      

  5.   

    联合查询出来的是结果集,不能进行更新,你的需求是可以用10搂的方法用case when 语句将想要的结果集查询出来
      

  6.   

    像这种情况,要么把你查询出来的结果放到CTE中,然后修改这个CTE,要么用dawugui的办法。