我想从表中删除未使用的行。 这是简化的例子,我的问题:如何使用SQL从数据库表中删除未使用的行?
有2表:
user table:
user_id user_name
--------------------
1 Mike
3 Carol
8 Eric
address table:
user_id address
-----------------------
1 [email protected]
3 [email protected]
10 [email protected]
3 [email protected]
我想从地址表中删除未使用的地址。 如果用户表中存在user_id的地址,则该地址未被使用。 示例表中有一个未使用的地址:[email protected]。
我是新与SQL,和我的解决办法是丑陋:
DELETE FROM address
WHERE NOT EXISTS
(SELECT * FROM user WHERE address.user_id = user.user_id);
必须有更好的方式来做到这一点。 做什么是最好的方法?
使用sqlite。
对我来说看起来不太难看,你想要改进什么 - 看,表现? – 2011-12-15 12:11:48