Heim  >  Fragen und Antworten  >  Hauptteil

php – Yii-Relationaltabelle mit optimierter Abfrage, um N+1-Abfragefragen zu vermeiden

Beispiel: eine Beitragsdetailseite
Detailseite hasMany Association Kommentartabelle评论表
评论表 hasOne关联 用户表
用户表 hasOne关联 用户数据表Kommentartabelle hasOne Association

用户表 hasOne Association Benutzerdatentabelle

Dann kann die Kommentarliste über die with('author')-Verknüpfung abgefragt werden用户表关联查询用户数据表, wodurch N+1-Abfragen vermieden werden

Aber zu diesem Zeitpunkt sind es bei der Abfrage der Benutzerdatentabelle über 用户表,也关联了用户数据表association immer noch N+1 Abfragen.

🎜Wie verknüpfe ich 🎜 und Benutzerdatentabelle auf einmal? 🎜
阿神阿神2707 Tage vor1215

Antworte allen(2)Ich werde antworten

  • 欧阳克

    欧阳克2017-06-10 09:49:45

    评论关联用户:getAuthor
    用户关联用户数据:getAuthorname
    可以with('author.authorname')来取出。
    如果想看示例的话这个视频章节中正好有讲从多层关联中取数据。

    Antwort
    0
  • 世界只因有你

    世界只因有你2017-06-10 09:49:45

    我很久没用yii2了,以前用ActiveRecord的时候,复杂的语句我都是直接写SQL来处理的,就懒得去模型文件东改改西改改了,用原生SQL,只要你觉得性能没问题,LEFT JOIN关联就行,findBySQL()查吧。

    Antwort
    0
  • StornierenAntwort