SELECT fdmaterial.FoodID 
            
  FROM [Restaurant].[dbo].[fdmaterial],[Restaurant].dbo.Martix  where fdmaterial.FoodName =Martix.foodName1
update Martix 将选择出来的FoodID添加到表Matrix foodID1中,update语句具体怎么编辑啊,求解释

解决方案 »

  1.   


    update b set b.foodid=a.foodid from [Restaurant].[dbo].[fdmaterial] a,[Restaurant].dbo.Martix b
    where a.FoodName =b.foodName1
      

  2.   

    你的两个表之间要有数据关联才可以进行这样的设置,可以试试下面的,我也是新手,希望对你有帮助。UPDATE Matrix SET foodID1=(
    SELECT fdmaterial.FoodID 
    FROM [Restaurant].[dbo].[fdmaterial],[Restaurant].dbo.Martix 
    WHERE fdmaterial.FoodName=Martix.foodName1
    )a,Matrix 
    WHERE a.FoodID=Matrix.foodID1
      

  3.   

    不好意思,刚刚写漏了点代码,应该是这样写UPDATE Matrix SET foodID1=a.FoodID FROM(
    SELECT fdmaterial.FoodID 
    FROM [Restaurant].[dbo].[fdmaterial],[Restaurant].dbo.Martix 
    WHERE fdmaterial.FoodName=Martix.foodName1
    )a,Matrix 
    WHERE a.FoodID=Matrix.foodID1例如我S表里面有一列叫AA,我就可以这样写UPDATE S SET AA=a.S# FROM(
    SELECT S# FROM S
    ) a,S 
    WHERE a.S#=S.S#