编写一个高效的查询

Posted

技术标签:

【中文标题】编写一个高效的查询【英文标题】:Write an efficient query 【发布时间】:2011-04-11 16:10:02 【问题描述】:

php/mysql 中开发内部票务系统。这种短期票务系统已经实施了一年左右。

我们的票数已达到 10,000 张,我希望提高查询效率,因为不需要每天查看大约 9,500 张票。

现在查询正在按技术 ID 获取行,然后检查它是否是未结票。

我猜如果我让它查找未结票,那么技术 ID 查询会更有效。这是真的吗(随着查询的构建,选项较少的行对选项较多的行?)

【问题讨论】:

【参考方案1】:

不要猜测,测量!

最重要的部分是您有适合您的查询的索引。并且 10000 并不是很多行,如果这非常慢,您的查询可能没有使用索引。

SO question: What resources exist for Database performance-tuning?

【讨论】:

+1 用于索引。如果您学习了一些数据库设计,那么您也可以尝试进行数学计算,而不是测量。不过,哪个更快可能还有待商榷。 :-) 数学不是我的强项。感谢您的链接。我运行了两个查询并查看了未处理的票证,然后技术 ID 更快。我正在寻找长期的效率或资源使用而不是速度,并将使用链接来了解如何衡量。

以上是关于编写一个高效的查询的主要内容,如果未能解决你的问题,请参考以下文章

如何使这个 SQL 查询更高效?

哪个查询更好更高效 - mysql

编写graphql服务

高效的秘密让k8s运维更高效-日志搜索脚本

在内存高效生成器中使用 PyMySql 的正确方法

重写大型 IN 子句的最高效方法是啥?