Pertanyaan sertai ialah operasi biasa dalam pengurusan pangkalan data. Dalam artikel ini, kami akan meneroka cara melakukan pertanyaan penyertaan menggunakan Sequelize, ORM untuk Node.js.
Dalam senario pertanyaan penyertaan biasa, anda mungkin mempunyai dua model : pengguna dan siaran. Matlamatnya adalah untuk mendapatkan semula siaran bersama-sama dengan maklumat pengguna yang berkaitan. Pertanyaan SQL mentah untuk tugas ini boleh jadi:
SELECT * FROM posts, users WHERE posts.user_id = users.id
Cabarannya terletak pada menterjemah pertanyaan ini ke dalam gaya ORM Sequelize.
Untuk melakukan gabungan dalaman dalam Sequelize, anda boleh menggunakan kaedah sertakan pada model dan menentukan model yang berkaitan. Contohnya, untuk menyertai siaran dengan pengguna dengan gabungan dalaman:
Posts.findAll({ include: [{ model: User, required: true // ensures only posts with users are returned }] }).then(posts => { // access posts and related user information });
Variasi
Posts.findAll({ include: [{ model: User, where: { year_birth: 1984 } }] }).then(posts => { // ... });
Posts.findAll({ where: { name: "Sunshine" }, include: [{ model: User, where: ["year_birth = post_year"] }] }).then(posts => { // ... });
Dengan memanfaatkan ORM Sequelize keupayaan, anda boleh melakukan pertanyaan penyertaan dengan cekap dalam Node.js, memudahkan operasi pangkalan data anda dan pengambilan data proses.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pertanyaan Sertai dalam Node.js dengan Sequelize?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!