如何在数据集中先插入再查询
INSERT INTO `memtab1` (`id`,`name`) (
    SELECT `id`,`name` FROM `table1` -- 简化查询语句
    WHERE NOT EXISTS (SELECT `id` FROM `memtab1`)
);
SELECT * FROM `memtab1`;

代码已简化。

因查询语句比较复杂低效,想用内存表memtab1做缓存,用触发器实现table1变化后清空memtab1,查询时如果memtab1为空就从table1读取数据插入memtab1再返回,如果memtab1不为空就直接返回。

但是将上面代码写入数据集,执行时报错(见下图),请问能不能解决?谢谢!

image.png

FineReport ejzhang 发布于 2020-3-29 20:54
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
3
zsh331Lv8专家互助
发布于2020-3-29 21:36

image.png

最佳回答
0
qq1320929786Lv6初级互助
发布于2020-3-30 08:37

 写个初始化事件,执行存储过程

  • 3关注人数
  • 1008浏览人数
  • 最后回答于:2020-3-30 08:37
    请选择关闭问题的原因
    确定 取消
    返回顶部