我想通过使用适当的索引来优化此查询

时间:2014-09-26 13:55:24

标签: mysql

delete from cards_package_breakup 
where cards_package_id in 
    (select id from cards_package where cards_package.cards_id=13);

我没有card_package_breakup表与任何可以匹配值的表的直接关系,我想在内部查询的基础上删除数据。我在列上应用了适当的索引但没有使用那些索引?主要问题是索引......任何人都可以提供帮助

1 个答案:

答案 0 :(得分:0)

您写道,您已经拥有适当的索引,可以让您将表格相互关联,因此您可以尝试按以下方式修改查询:

DELETE FROM cards_package_breakup AS cpb
   LEFT JOIN cards_package AS cp ON cp.id = cpb.cardspackage_id
   WHERE cpb.cards_id = 13;

如果需要,请更正字段名称以匹配您的确切架构,但上述内容将连接您的两个表格,并从cards_package_breakup中删除符合您条件的行。