Prismaでjoinする
Railsでよく見かけたのはこういうのですが・・
time_range = (Time.now.midnight - 1.day)..Time.now.midnight
Customer.joins(:orders).where(orders: { created_at: time_range }).distinct
Prismaではなんかjoinがない??と思っていたら最近こんなのが出ていたようでしたー!
プロジェクトでqueryを書いていて、joinができないんだなーと思っていたところ、記事を見つけました。使っているprismaはこれより1個前くらいなので、まだ今は複雑でもないのでそのまま行きますが、のちにupdateした方が良さそうです。
勉強になったのは、DBレベルだとフラットなんだけど、実際のアプリケーションレベルのqueryだと1個ずつのテーブルにアクセスしてnested objectを作りたいっていうのがdevelopersなんですね。あと最後のJSON aggregation on the DB-levelというのがいいなと思いました。resultが出た時JSONいちいち変えるのしなくていいってことかな?
まだまだ勉強しないといけません。