gpt4 book ai didi

mysql - 这个MYSQL查询如何才能更好

转载 作者:行者123 更新时间:2023-12-01 00:15:00 26 4
gpt4 key购买 nike

我有一个表,其中包含用户的所有照片。由于某些原因(不关心为什么)可以从用户表中删除(使用 DELETE FROM)一些用户,但照片保留在照片表中。

我需要知道用户表中实际存在的用户照片数量。

我想到的第一个解决方案是:

SELECT COUNT(DISTINCT user_id) FROM photos WHERE user_id IN (SELECT id FROM users)

但我不确定执行两个查询是否是最好的查询。有更好的方法吗?

最佳答案

最好的方法是在两个表之间使用外键约束,并实现级联删除。 MySQL 手册中提供了更多信息:

http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html

正如评论者所指出的,这需要使用 InnoDB 存储引擎。 This is the default storage engine as of MySQL 5.5.5.

关于mysql - 这个MYSQL查询如何才能更好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6206914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com