![]() |
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等)都会将原始查询作为有效的半联接来处理。就我个人而言,我发现子查询语法更易于阅读和编写,特别是对于较大的查询。 |
![]() |
hello_programmers · Mysql从其他表输出一列 2 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 2 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 2 年前 |
![]() |
Popo · Sql查询:返回数据库中不可用的where条件 2 年前 |
|
Hamdan Nuramdani · 对账单中一周内不同表中的数据求和 2 年前 |
|
Kugelfisch · 用php为数据库加密数据 2 年前 |