INSERT INTO MasterBillDft
      (s_ID, BillSN, Re, SumNumber, DateLimit, YH_Money, YSYF_Money, 
      Act_Money, SumMoney)
SELECT b.s_ID, t.TradeNo, t.buyerIdent + t.ReceiverName, SUM(o.dealcount), 
      CONVERT(varchar(10), getdate(), 23), t.postfee, t.TotalCash, t.SellerRecvRefund, 
      SUM((o.DealPrice - o.DiscountFee) * o.Dealcount)
FROM BuildID AS b, Trade AS t INNER JOIN
      ORDER AS o ON t.TradeNo = o.OrderNo
WHERE t.State = 'wait' AND t.TradeNo NOT IN
          (SELECT m.BillSN, md.BillSN
         FROM MasterBill AS m, Masterbilldft AS md)

解决方案 »

  1.   

    (SELECT m.BillSN, md.BillSN  FROM MasterBill AS m, Masterbilldft AS md)
    红字部分啥情况??
      

  2.   

    in表达式里面,好像只能选择一列吧,不知道你的意思是不是这样的INSERT INTO MasterBillDft
      (s_ID, BillSN, Re, SumNumber, DateLimit, YH_Money, YSYF_Money,  
      Act_Money, SumMoney)
    SELECT b.s_ID, t.TradeNo, t.buyerIdent + t.ReceiverName, SUM(o.dealcount),  
      CONVERT(varchar(10), getdate(), 23), t.postfee, t.TotalCash, t.SellerRecvRefund,  
      SUM((o.DealPrice - o.DiscountFee) * o.Dealcount)
    FROM BuildID AS b, Trade AS t INNER JOIN
      ORDER AS o ON t.TradeNo = o.OrderNo
    WHERE t.State = 'wait' AND t.TradeNo NOT IN
      (SELECT m.BillSN from MasterBill m union all 
       select md.BillSN from Masterbilldft AS md)
      

  3.   


    NOT IN
      (SELECT m.BillSN, md.BillSN
      FROM MasterBill AS m, Masterbilldft AS md)
    这段有问题, 只能SELECT 1个字段