0

我有一个竞赛表,每个竞赛都有承包商和客户(它们存储在另一个表中)。

要求展示与其承包商和客户的所有比赛。在 mysql 中,它是通过 join-s 完成的,这使查询变得复杂(在实际项目中,这些 join-s I 5-6)。查询执行时间长,尤其是记录很多的时候。

你是否认为,如果你做一个简单的比赛表,不连接数据库mysql中的表,而承包商和客户搬到Redis中,大大提高了数据样本的性能,同时考虑到以下事实使用 PHP 将数据组装和传输到模板中?谢谢!

编辑:这是一个示例查询(dql,我使用版本 2 的学说):

SELECT t, o, p, c, w, m, f, parent, cparent, com, party FROM PortalTenderBundle:Tender t
                         LEFT JOIN t.organization o
                         LEFT JOIN o.parent parent
                         LEFT JOIN t.provision p
                         LEFT JOIN t.contractors c
                         LEFT JOIN c.parent cparent
                         LEFT JOIN t.contractors cf
                         LEFT JOIN t.winner w
                         LEFT JOIN t.manager m
                         LEFT JOIN t.files f
                         LEFT JOIN t.comments com
                         LEFT JOIN t.party party
                         LEFT JOIN t.party party_f
                         WHERE ((t.opening_at IS NULL) OR (t.opening_at IS NOT NULL AND t.opening_at <= CURRENT_TIMESTAMP()))
4

0 回答 0