我有一个看起来像这样的SQL查询。
var q = "INSERT INTO leave_taken_superior_map_dis_approved " +
"(ltsm_id,ltsm_superior_id,ltsm_group_id,ltsm_all_approved,ltsm_overide_by_hr,ltsm_old_list,ltsm_leave_type,ltsm_message,ltsm_user,lstm_leave_reason) " +
"SELECT ltsm_id,ltsm_superior_id,ltsm_group_id,ltsm_all_approved,ltsm_overide_by_hr,ltsm_old_list,ltsm_leave_type,ltsm_message,ltsm_user,lstm_leave_reason FROM leave_taken_superior_map WHERE ltsm_group_id = ?;" +
"INSERT INTO affno_leave_taken_disapprove " +
"(alt_id,alt_leave_date,alt_leave_text,alt_leave_taken_by,alt_leave_type,alt_other,alt_date_time,alt_group_by,alt_leave_applied,alt_leave_approved_by,alt_leave_approved,alt_superior_id) " +
"SELECT alt_id,alt_leave_date,alt_leave_text,alt_leave_taken_by,alt_leave_type,alt_other,alt_date_time,alt_group_by,alt_leave_applied,alt_leave_approved_by,alt_leave_approved,alt_superior_id from affno_leave_taken WHERE alt_group_by = ?; " +
"delete from leave_taken_superior_map where ltsm_group_id = ?;";
var qp = [groupID, groupID, groupID];
sqlq.executeQuery(q, qp).then((data) => {
resolve(data)
}).catch((err) => {
console.log(err)
reject(err)
})
我想要做的是从表中复制完成的数据并将其放在另一个表上,然后从上一个表中删除它。但是我需要更改上一个表中的一些列并将它们添加到新表中。对于前而不是来自leave_taken_superior_map的ltsm_superior_id
,我想在新表中添加另一个值(假设为5)(leave_taken_superior_map_dis_approved)。是否有任何简单的方法来实现这一目标。
答案 0 :(得分:0)
只需写下你想要的值,就像这样
INSERT INTO leave_taken_superior_map_dis_approved (ltsm_superior_id, ltsm_id, ltsm_group_id, ltsm_all_approved, ltsm_overide_by_hr, ltsm_old_list, ltsm_leave_type, ltsm_message, ltsm_user, lstm_leave_reason)
SELECT
5,
ltsm_id,
ltsm_group_id,
ltsm_all_approved,
ltsm_overide_by_hr,
ltsm_old_list,
ltsm_leave_type,
ltsm_message,
ltsm_user,
lstm_leave_reason
FROM leave_taken_superior_map
WHERE ltsm_group_id = ?;