从sql中的insert语句中的两个表中选择

时间:2010-12-24 01:27:21

标签: c# sql sql-server-2008

我正在尝试从两个不同的表中插入包含WHERE的语句:

我要插入的表是dbo.order

其他两个表是:

  • dbo.users。 USER_ID。
  • dbo.packages。的package_id。
  • 另一个订单字段“notes”。

我试过的陈述是

insert into dbo.order 
     (customer_id,package_id,notes) 
 Select user_id,Package_ID 
 from
      dbo.users,dbo.packages 
 where 
     username = 'bader' AND  package_name = 'beginner','notes value here';

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

此处没有明显的联接,因此您将获得Bader订单和初学者套餐的笛卡尔产品。不确定音符值应该是多少。如果它是文字,你可以将它包含在select子句中。

insert into dbo.order 
     (customer_id,package_id,notes) 
 Select 
       user_id,Package_ID , 'notes value here'
 from
      dbo.users,dbo.packages 
 where 
     username = 'bader' AND  package_name = 'beginner';

答案 1 :(得分:1)

insert into dbo.order 
     (customer_id,package_id,notes) 
 Select user_id, Package_ID, 'notes value here'
 from
      dbo.users, dbo.packages
 where 
     username = 'bader' AND  package_name = 'beginner';