Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 性能方面的考虑,请选择哪个更好_Mysql - Fatal编程技术网

Mysql 性能方面的考虑,请选择哪个更好

Mysql 性能方面的考虑,请选择哪个更好,mysql,Mysql,哪一个更好-使用mysql聚合函数COUNT返回所选事件数,还是在插入操作期间手动计数并将计数插入字段?考虑到COUNT函数搜索表或索引并对结果进行分组,而在手动计数中,我只检索字段 IMO您应该始终使用MySQL内部函数从数据库中获取结果/数据。 但这也取决于你在计算什么,你在检索哪些数据,你需要执行哪些操作等等。 一般来说,如果可以,请使用MySQL函数:它们快速可靠 IMO您应该始终使用MySQL内部函数从数据库中获取结果/数据。 但这也取决于你在计算什么,你在检索哪些数据,你需要执行哪些

哪一个更好-使用mysql聚合函数COUNT返回所选事件数,还是在插入操作期间手动计数并将计数插入字段?考虑到COUNT函数搜索表或索引并对结果进行分组,而在手动计数中,我只检索字段

IMO您应该始终使用MySQL内部函数从数据库中获取结果/数据。
但这也取决于你在计算什么,你在检索哪些数据,你需要执行哪些操作等等。

一般来说,如果可以,请使用MySQL函数:它们快速可靠

IMO您应该始终使用MySQL内部函数从数据库中获取结果/数据。
但这也取决于你在计算什么,你在检索哪些数据,你需要执行哪些操作等等。

一般来说,如果可以,请使用MySQL函数:它们快速可靠

我认为在手动计数时,您必须显式地(编写代码),而如果您使用Mysql查询,它将由Mysql服务器管理。。。在另一种情况下,如果它是一个webapp或你正在构建的东西,它会在服务器上增加额外的开销。。。我认为使用sql计数查询是明智的

我认为在手动计数时,您必须显式地(编写代码),而如果您使用Mysql查询,它将由Mysql服务器管理。。。在另一种情况下,如果它是一个webapp或你正在构建的东西,它会在服务器上增加额外的开销。。。我认为使用sql计数查询是明智的

如果您手动执行此操作

  • 你做了不需要的额外工作
  • 您必须记住为每个插入和删除操作执行此操作
  • 你会因为额外的操作而减速
  • 当直接操纵表时,会出现不一致
  • 在MyISAM表中,MySQL已将计数作为字段检索
  • 在InnoDB中,它会稍微慢一点,但是后续调用会被缓存,所以只有第一个调用会慢一点
试图将DBMS的工作做得比DBMS更好不是一个好主意。DBMS体现了多年的经验和优化。

如果手动操作

  • 你做了不需要的额外工作
  • 您必须记住为每个插入和删除操作执行此操作
  • 你会因为额外的操作而减速
  • 当直接操纵表时,会出现不一致
  • 在MyISAM表中,MySQL已将计数作为字段检索
  • 在InnoDB中,它会稍微慢一点,但是后续调用会被缓存,所以只有第一个调用会慢一点
试图将DBMS的工作做得比DBMS更好不是一个好主意。DBMS体现了多年的经验和优化