我有一个小型数据库,有几个表用于一些小型PHP项目。我的一个SELECT(给定波纹管表)给出了这样的结果:
+ ------- + ------ + ------ +
| idpart |数量| IMEI |
+ ------- + ------ + ------ +
| 2 | 4 | xxx |
| 6 | 1 | yyyy |
| 8 | 2 | zzzz |
| 10 | 3 | ssss |
+ ------- + ------ + ------ +
行数改变它可以是1或n,但它永远不会少于1.idpart不会重复它作为此查询的结果 - 它只能显示一次。这是实际查询:
select odel_part.idpart as idpart, model_part.qtyused as qty, reparationorders.IMEI as IMEI
from reparation orders
inner join order model on order_model.idreparationorder=reparationorders.idreparationorder
inner join models on order_model.idmodel = models.idmodel
inner join model_part on models.idmodel = model_part.idmodel
inner join parts on model_part.idpart = parts.idpart
where reparationorders.idreparationorder = 1
此查询的结果以及一些已修复的其他数据必须插入到其他表中。其他表格如下:
+ ----------- ----------- + ------- + -------- + + ----- + - ----- +
| idtrans | idpart |数量|日期| TT | IMEI |
+ ----------- ----------- + ------- + -------- + + ----- + - ----- +
idtrans - 自动增量的int
idpart - 来自查询( idpart )
数量 - 来自查询( qty )
日期 - 手动输入
tt - 进入manualy
IMEI - 来自查询( IMEI )
在第二个表中idtrans是唯一的,idpart可以重复它自我彻底的行(这是预期的行为,因为这个表将跟踪这些部分在不同日期的使用情况)。 你可以帮我把这个插入到第二个表(第二个表的名字是交易)吗?
提前谢谢
答案 0 :(得分:0)
你会这样做:
insert into transactions(idpart, qty, date, tt, IMEI)
select idpart, qty, now(), @tt, imei
from reparations orders . . .;
. . .
只是查询的其余部分。我猜你想要插入当前日期/时间" date&#34 ;; now()
提供该信息。