搜索
mysql如何将多个表中的ID只为某值的整行数据删掉?
巴扎黑
巴扎黑 2017-06-22 11:54:42
[MySQL讨论组]

比如我现在有四张表,每个表的列都不一样,但是都有一个ID列,且有的表中ID不作为主键,我现在需要根据ID值在四张表中把ID值为12的行的数据都删掉,该怎么写DELETE语句?请大神指教

巴扎黑
巴扎黑

全部回复(3)
漂亮男人
delete t1,t2,t3,t4 from t1 left join t2 on t1.id=t2.id left join t3 on t1.id=t3.id left join t4  on t1.id=t4.id where t1.id=12
天蓬老师

你的问题直接四条sql执行就行了
你并不能保证每个表都有你要删的记录 怎么join都可能有问题

漂亮男人
START TRANSACTION;
    DELETE FROM t1 WHERE id=12;
    DELETE FROM t2 WHERE id=12;
    DELETE FROM t3 WHERE id=12;
    DELETE FROM t4 WHERE id=12;
COMMIT;

# ROLLBACK;  # 如果commit有错,请回滚.
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号