mysql - 根据select语句编写SQL删除

标签 mysql sql

如何进行以下查询并在一个查询中删除?

select krps.kpi_results_fk from report.kpi_results_per_scene krps inner join report.kpi_results kr on kr.session_uid = '0000c2af-1fc8-4729-bb2a-d4516a63107a' 
and kr.pk = krps.kpi_results_fk

delete from report.kpi_results_per_scene where kpi_results_fk = 'answer from above query'

最佳答案

我认为对于您的情况,不需要需要使用内部联接

以下查询可以减少内连接的开销

DELETE FROM report.kpi_results_per_scene 
WHERE kpi_results_fk IN 
        (SELECT kr.pk FROM report.kpi_results kr 
            WHERE kr.session_uid = '0000c2af-1fc8-4729-bb2a-d4516a63107a') 

关于mysql - 根据select语句编写SQL删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36151350/

相关文章:

mysql - 查询 MySQL 数据库时出现问题

mysql - 如何获取mysql中所有约束类型?

php - 从 MySql 数据库中获取按日期分组的结果

mysql - 由于错误代码 1054,无法插入记录

sql将2行合并为1行

sql - 如何在具有不同分隔符的HIVE中处理SPLIT功能

mysql - 使用 Node 收集 mysql 查询

mysql - 在 MySQL 中,PROCEDURE 是否优于 FUNCTION?

PHP 通过“提交”按钮发送数据(表名称)时始终显示最后创建的表

mysql - 使用具有两个条件和不具有条件的 WHERE 子句连接两个表