回答

收藏

执行更多或复杂的SQL查询,还是使用PHP过滤数据?

技术问答 技术问答 243 人阅读 | 0 人回复 | 2023-09-12

我正在构建一个将获得大量流量的人PHP应用程序。我一直知道我应该限制它SQL查询的数量(目前每个访问者约15人)。我可以把它限制在使用上PHP大约一半的数据过滤和排序,但会更快吗?此外,我可以在查询中使用
1 _0 I7 ]' H( WJOIN减少查询数量,但这真的比执行多个查询快吗?!" r9 @! P5 Y3 h
                                                                $ i# n( n* ^  ~7 ?5 x/ ?$ Y
    解决方案:                                                               
& ?; S4 L' K# q* l0 Q1 x                                                                如果每个访问者有15个查询,你很可能做错了什么,除非你的应用程序很大。) F( g6 X0 l% X4 w0 v
使用PHP而不是MySQL对数据进行排序和过滤
5 }% C; e7 l% }: G& b3 k用PHP如果给出正确的索引,排序和筛选不会使你的应用程序更快,但肯定会减慢,MySQL优化速度会很快,所以你会尽可能多地使用它。  Q4 |+ b- i; d  B' h2 O, t' U" V
了解数据库索引会让你的生活更轻松,提高应用程序的性能。这是一个链接:
& t3 H) u% d* {$ Q2 V( n3 ^http://www.mysqltutorial.org/mysql-create-drop-- ?6 v% ]8 ]6 M; @1 Y8 ^+ k9 S/ v
index.aspx( i6 S0 ^! E7 q" {# I% o
联合查询和多个查询8 s- U/ J7 q1 V7 x, r. f2 W, h
使用联接的执行速度是否快于执行多个查询。
4 J5 E8 `- U, Z/ v2 `' m答案是肯定的,使用给定正确索引join总会更快。这也回到了第一个主题,即索引编制。+ ^1 V+ W+ `7 k/ `1 P
然而,请记住,连接的效率与您想要实现的效率相同。如果操作正确,它将非常高效,如果操作错误,它将非常慢。因此,您必须了解正确执行操作的基本知识。
9 c& t. J" w" f* p1 h在这里可以找到join的介绍:" l1 \& Y7 J% N/ a
http://blog.sqlauthority.com/2009/04/13/sql-server-introduction-to-joins-
& F% k/ E8 r3 i$ U; ebasic-of-joins/
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则