Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Perintah Laravel berdasarkan hubungan hasmany

Sangat penting untuk memahami cara kerja pemuatan bersemangat Laravel. Jika kami ingin memuat contoh Anda, Laravel terlebih dahulu mengambil semua utas. Kemudian ia mengambil semua komentar dan menambahkannya ke objek utas. Karena kueri terpisah digunakan, tidak mungkin memesan rangkaian pesan melalui komentar.

Anda harus menggunakan join sebagai gantinya. Perhatikan bahwa saya menebak nama tabel/kolom Anda dalam contoh ini.

$threads = Thread::leftJoin('comment', 'comment.thread_id', '=', 'thread.id')
    ->with('comments')
    ->orderBy('comment.created_at', 'desc')
    ->get();

Karena Anda bergabung, Anda mungkin perlu menentukan kolom secara manual untuk memilih nama kolom tabel Anda.

$threads = Thread::select('thread.*')->leftJoin('comment', 'comment.thread_id', '=', 'thread.id')
    ->with('comments')
    ->orderBy('comment.created_at', 'desc')
    ->get();


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Integer yang salah (2147483647) dimasukkan ke MySQL?

  2. Dua kolom kenaikan otomatis atau kenaikan otomatis dan nilai yang sama di kolom lain

  3. Menggunakan Oracle JDeveloper dengan Layanan Database MySQL di Oracle Cloud Platform, Bagian 1

  4. Optimalisasi pencarian MySQL menggunakan like dan wildcard

  5. Kesalahan Sintaks SQL 1064 menggunakan pernyataan yang disiapkan JDBC