Bagaimanakah saya boleh mengurangkan pertanyaan Prisma ini kepada satu pertanyaan?
<p>Saya perlu mendapatkan <kod> pengguna</kod> mengikut tarikh <kod><kod> id</kod> </code>, saya boleh melakukannya dengan dua pertanyaan seperti ini: </p>
<pre class="brush:php;toolbar:false;">ctx.prisma.post.update({
di mana: {
id: tunggu ctx.prisma.post
.findFirst({
di mana: { userId: "c2e4c855-768c-48ab-b9c1-155ce1090cd6"
pesananOleh: { tarikh: "desc"
})
.then(post => post.id),
},
data: {
dikemas kini: benar
},
})</pre>
<p>Saya telah cuba menjadikannya berfungsi sebagai pertanyaan tetapi saya tidak berjaya, ini adalah yang terbaik yang saya peroleh sebagai klausa SQL: </p>
<pre class="lang-sql prettyprint-override"><kod>KEMASKINI Catatan
SET dikemas kini = benar
WHERE id IN (
PILIH * DARI (
PILIH id
DARI Pos
WHERE user_id = "c2e4c855-768c-48ab-b9c1-155ce1090cd6"
DAN tarikh = (PILIH MAX(tarikh) daripada Siaran)) sebagai x);
</code></pre>
<p>Walaupun ini adalah klausa, ia juga mengakses pangkalan data dua kali. Jika ada cara yang lebih baik untuk melakukan ini dalam SQL, saya berminat untuk mempelajarinya, tetapi saya tidak mahu menggunakan Prisma untuk menghantar pertanyaan <code>raw</code> </p>
<p>Adakah perkara yang saya cari mungkin atau patutkah saya menyimpannya dalam dua pertanyaan? </p>