1
5
我在一篇文章中谈到了这一点 Database Development Mistakes Made by AppDevelopers
和
顺便说一句,我使用的上述语法是您在进行连接时应该更喜欢的语法。这比把它们放在盒子里更清楚
查询几乎会在瞬间执行。 最后,不要使用*选择所有需要的列。明确地命名它们。以后添加列时,麻烦会少一些。 |
2
3
SQL查询本身肯定是您的瓶颈。查询中有一个子查询,它是代码的in(…)部分。这实际上是同时运行两个查询。通过连接(类似于上面d03boy提到的)或更有针对性的SQL查询,您可能会将SQL时间减少一半(或更多!)。例如:
您还需要查看数据库模式本身。确保为所有常用列编制索引,以便查询运行得更快。在这种情况下,您可能需要检查您的news\u id和tag\u id字段。 最后,您将想看看PHP代码,看看是否可以生成一个包含所有内容的SQL查询,而不是迭代几个单独的查询。如果您发布更多代码,我们可以提供帮助,这可能是为您发布的问题节省的最大时间。:) |
3
2
如果我理解正确,这只是列出一组特定标签的新闻故事。
|
4
1
我认为这会给出同样的结果,但我不是100%确定。有时简单地限制结果会有所帮助。 |
5
1
例如,原始查询将为tbl_新闻表中的每个符合条件的行返回1行,但此查询:
这也不算太糟,但大多数其他数据库(PostgreSQL、Firebird、Microsoft、Oracle、DB2等)都会将原始查询作为有效的半联接来处理。就我个人而言,我发现子查询语法更易于阅读和编写,特别是对于较大的查询。 |
Hatsune Miku · 比较或if语句是否更快[已关闭] 1 年前 |
Black Swan · 无法解压缩的值太多(应为2)错误 1 年前 |
Kai · 有什么方法可以轻松优化VSCode中的锈迹? 2 年前 |
Balfar · 处理NumPy阵列上的循环最有效的方法是什么? 2 年前 |
Daniel · C#轻松存储快速访问的大型位矩阵 6 年前 |
halbe · 优化音频DSP程序的numpy计算 6 年前 |
Afsara · 是否有任何方法不能优化我们的应用程序? 6 年前 |