解决方案 »

  1.   

    Insert into B(apid,其他字段,...) select appid,其他字段... from A group by appid
      

  2.   

    你说的这种方法我知道 我的意思是 要先找出 A表中比B表多出的数据  然后插入B表
      

  3.   

    insert into b
    select a.* from a left join b on a.appid=b.apid where b.apid is null
      

  4.   

    create trigger tr_insert_tb1
    after insert on tb
    for each row
    begin
         if not exists(select * from tb1 where i=new.i) then
           insert into tb1(i) value( new.i);
         end if;
    end; 
      

  5.   

    DELIMITER $$USE `jfyd_mytest`$$DROP TRIGGER /*!50032 IF EXISTS */ `chId`$$CREATE
        /*!50017 DEFINER = 'jfyd'@'%' */
        TRIGGER `chId` AFTER INSERT ON `jfyd_single_order` 
        FOR EACH ROW BEGIN

         IF NOT EXISTS(SELECT * FROM `jfyd_single_order` WHERE `ChannelID`=new.`ChannelID` GROUP BY `ChannelID`) THEN
         INSERT INTO `jfyd_single_channel`(`chId`) VALUE( new.`ChannelID`);
         END IF;

        END;
    $$DELIMITER ;好像有问题..帮忙看看
      

  6.   

    IF NOT EXISTS(SELECT * FROM `jfyd_single_order` WHERE `ChannelID`=new.`ChannelID` GROUP BY `ChannelID`) THEN
         INSERT INTO `jfyd_single_channel`(`chId`) VALUE( new.`ChannelID`);
         END IF;
    你判断jfyd_single_order这个不对吧,是这个吧jfyd_single_channel,这个表不能重复的