如何根据现有记录在表中添加值

时间:2014-03-15 07:33:25

标签: sql-server

我想根据现有值在特定员工的表格中添加值:

enter image description here

这里我想添加除pk_servicerecord_Id之外的所有值,我想将此值递增1。

  INSERT INTO tbl (pk_Employee_ID,pk_ServiceRecord_ID,pk_Scale_ID, pk_Allowance_ID)
  SELECT pk_Employee_ID,(pk_ServiceRecord_ID+1) ,pk_Scale_ID, pk_Allowance_ID   
  FROM  tbl       

//因为我尝试过这样的事情,但没有工作

1 个答案:

答案 0 :(得分:0)

试试这个:

INSERT INTO tbl 
  SELECT Max(pk_Employee_ID)+1 as ID,pk_ServiceRecord_ID,pk_Scale_ID, pk_Allowance_ID   
  FROM  tbl 
  GROUP BY pk_ServiceRecord_ID,pk_Scale_ID, pk_Allowance_ID 

它会将Max(pk_Employee_ID)+1作为pk_Employee_ID插入记录。

INSERT INTO tbl 
  SELECT pk_Employee_ID+1 as ID,pk_ServiceRecord_ID,pk_Scale_ID, pk_Allowance_ID   
  FROM  tbl