星空2020 2023-03-25 14:29 采纳率: 64.1%
浏览 12
已结题

mysql触发器在insert table_A时同时新增到tabl_B

mysql触发器在insert table_A时,在table_A字段name统计数量等于2时同时新增一条数据到tabl_B,否则不触发。
该如何修改?


```sql
//table_A统计name值:
 SELECT COUNT(NAME)AS qty FROM 
(SELECT
    ID,NAME,ADDTIME,
    (
    CASE WHEN date_format(ADDTIME,'%H:%I:%S') BETWEEN '00:00:00' AND '08:30:59'  THEN (DATE_FORMAT(DATE_SUB(ADDTIME,INTERVAL 1 DAY),'%Y-%m-%d N'))
    WHEN date_format(ADDTIME,'%H:%I:%S') BETWEEN '20:30:59' AND '23:59:59'  THEN (DATE_FORMAT(DATE_SUB(ADDTIME,INTERVAL 0 DAY),'%Y-%m-%d N'))
        ELSE date_format(ADDTIME,'%Y-%m-%d D') END) AS NEWADDTIME
FROM table_A WHERE STATUS='2')TB
 WHERE  NAME='张三' AND (NEWADDTIME = date_format(now(),'%Y-%m-%d D') OR NEWADDTIME = date_format(now(),'%Y-%m-%d N'))  //张三 为insert table_A时的值

//触发器 如何写条件,当table_A统计值大于2时,触发将
CREATE TRIGGER insert_sample
AFTER INSERT
ON table_A FOR EACH ROW
BEGIN
   ???//如何写条件;
insert into table_B(name,age,qty) valuesnew.name,new.age,统计数)
END


  • 写回答

1条回答 默认 最新

  • IT_service_mesh 2023-03-25 14:34
    关注

    参考GPT和自己的思路:您可以在触发器中使用IF语句来实现在insert table_A时同时新增到table_B的功能。以下是修改后的代码示例:

    CREATE TRIGGER insert_sample
    AFTER INSERT
    ON table_A FOR EACH ROW
    BEGIN
       DECLARE qty INT;
       SELECT COUNT(*) INTO qty FROM table_A WHERE name = NEW.name;
       IF qty = 2 THEN
          INSERT INTO table_B (name, age, qty)
          VALUES (NEW.name, NEW.age, qty);
       END IF;
    END
    

    在这个触发器中,我们首先声明一个变量qty来存储统计出来的name数量。然后我们使用SELECT COUNT(*)语句,来查询表table_A中name字段等于插入值NEW.name的数量,并赋值给qty变量。接着,我们使用IF语句来判断qty是否等于2,如果是,则插入一条新纪录到table_B中,同时将NEW.name,NEW.age和qty作为值插入相应的字段中。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月4日
  • 已采纳回答 3月27日
  • 创建了问题 3月25日

悬赏问题

  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)