gpt4 book ai didi

mysql - 如果行数 = 0 则运行查询

转载 作者:行者123 更新时间:2023-11-29 11:57:33 24 4
gpt4 key购买 nike

我创建了 3 个表:播放列表、轨道列表和 xmlexport,我用它们来存储我的播放列表。为了避免重复播放列表中的任何项目,我使用从播放列表插入的轨道列表,并将轨道列表的顶行插入到 xmlexport 中,然后以 .xml 的形式导出要播放的轨道我的播放器要读取的文件。每次发生此过程时,我都会从轨道列表中删除一行,因此当表播放最后一个项目时,它会变为空,并且我需要运行查询以从播放列表表中更新轨道列表。这是我一直在玩的,但它不能正常工作。

       INSERT INTO dms.test_trk
SELECT * FROM dms.test_ply
WHERE row_count() <= 0;

最佳答案

附上你的陈述

 INSERT INTO dms.test_trk
SELECT * FROM dms.test_ply
WHERE row_count() <= 0;

您到底期望发生什么?我本以为最后一个操作的结果(即执行此语句之前的结果)将与零进行比较,并相应地从 test_ply 检索行或不检索行。

但是,您似乎认为 row_count 以某种方式告诉您 test_trk 中是否有记录。

这两种假设似乎都是错误的。我的测试表明,启动 INSERT 时 row_count 重置为 -1,因此您根本无法在 INSERT 语句中使用此函数。

您正在寻找的是一个简单的 EXISTS 子句:

insert into test_trk
select * from test_ply where not exists (select * from test_trk);

关于mysql - 如果行数 = 0 则运行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32963350/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com