不能一条语句完成的。还是先插入再删除吧。删除的where和插入的where是一样的。

解决方案 »

  1.   

    两条sql语句,
    这个时间值事先取好,要保持两个时间一致.先复制数据INSERT INTO    
    a( id, mid)    
    (    
    SELECT id, mid 
    FROM b   
    WHERE mttime > '时间值'
    )  删除符合条件的数据DELETE FROM b WHERE mttime > '时间值';
      

  2.   

    设定mttime的索引不知道id和mid关系,最好避免在where后面用mttime作比较。
    mysql做搜索的时候,where如果是时间的话,弄不好会对表的所有信息进行处理
      

  3.   

    应该要分二步:先插入:INSERT INTO a( id, mid) where id, mid in( SELECT id, mid FROM b WHERE mttime > '时间值')  删除:DELETE FROM b WHERE mttime > '时间值';