我的sql查询有问题
我有两张表,字段如下:
表1
id, user_id, produk_id, booking_date, color, qty
表2
id, order_id, user_id, produk_id, date, color, qty, status
我试图将数据从表1传输到表2:
INSERT INTO TABLE2 (user_id, produk_id, color, qty)
SELECT user_id, produk_id, color, qty
FROM TABLE1
WHERE user_id = '10002'
当我想插入到表2中的数据与表1中的数据相同时,这段代码就可以工作了,
问题是,我要插入的数据有些不同,我需要手动插入。。
对于字段
user_id, produk_id, color, qty ==>is same with TABLEE1
但对于场
order_id, date, status ==> i need to input manually using PHP variable
如果数据已经传输到表2中,我想删除表1中的行
我真的不想修改那个查询
一次能做到吗??
有人能帮忙吗,我应该做什么查询才能得到?
最佳答案
您可以将所有列添加到insert,也可以将php变量添加到select:
INSERT INTO TABLE2 (order_id,user_id, date, produk_id, color, qty,status)
SELECT orderIdPHPvar, user_id, datePHPvar, produk_id, color, qty, statusPHPvar
FROM TABLE1
WHERE user_id = '10002'
有关如何做到这一点的演示,请参见sqlfiddle。
至于删除,不能在同一语句中执行。你得做一个单独的陈述。
DELETE FROM TABLE1
WHERE user_id = '10002'