简体   繁体   English

如何使用“名称”等其他条件而不是 mysql 中的 id 从共享 id 的数据库中删除行

[英]how to delete rows from databases that share id using another condition like “name” instead of id in mysql

i have tried this in phpmyadmin but it bring this error "#1109 - Unknown table 'training_session' in MULTI DELETE"我在 phpmyadmin 中尝试过这个,但它带来了这个错误“#1109 - 多重删除中的未知表'training_session'”

I have two tables ( athlete ) and ( training_session ).我有两张桌子( athlete )和( training_session )。 athlete 's relevant columns are name , id and training_session 's relevant column is athlete_id . athlete的相关列是nameidtraining_session的相关列是athlete_id

DELETE training_session  FROM training_session t
INNER JOIN athlete a
iN t.athlete_id = a.id
WHERE a.name = ‘Per Persen’;

MySQL said: MySQL 说:

1109 - Unknown table 'training_session' in MULTI DELETE 1109 - MULTI DELETE 中的未知表“training_session”

You need to use the alias defined in the FROM clause:您需要使用FROM子句中定义的别名:

DELETE t
    FROM training_session t INNER JOIN
         athlete a
         ON t.athlete_id = a.id
WHERE a.name = 'Per Persen';

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM