gpt4 book ai didi

mysql - 确定数据库中登录用户数的有效方法

转载 作者:行者123 更新时间:2023-11-30 23:25:19 25 4
gpt4 key购买 nike

我们的 MySQL 数据库有一个 users 表,其中有一个 logged_in, BOOL 列,当检测到用户登录或注销时设置该列。

在我们的网站上,我们会显示“用户已登录到应用程序”,但出于性能原因,我对简单地执行 SELECT COUNT(*) FROM users WHERE logged_in = 1 持谨慎态度。

我们预计用户表可能有几千行,但任何时候只有少数(比如 20)个用户会登录。

有没有办法确保可以在 MySQL 中优化此查询,可能涉及 KEY 或 VIEW?或者我是否需要创建一个辅助表,如 logged_in_users 以及用户并更新它?

最佳答案

  1. 如果 logged_in 上有一个索引,它应该是一个非常快速的查询,因为与整个用户表相比,登录的人数将非常小(logged_in = 0 可能不是然而非常高效 :) ) 这是其中一种情况,其中只有 2 个可能值的列上的索引可以对其中一个值进行超高效查询。
  2. 不要执行count(*),执行count(your_primary_key)。这样一来,如果您已为 logged_in 建立索引,则会覆盖整个查询以获得最佳性能。

关于mysql - 确定数据库中登录用户数的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13634728/

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