The basic Persistent backend is designed without joins (&quot;web-scale&quot;), and with the idea that it should be SQL agnostic. App-level join functionality is definitely needed.<div><br></div><div>If someone wanted to design a layer on top of it with other SQL features that just the SQL backends can use that is fine. However, this might start re-inventing the wheel. For those interested in SQL joins and otherwise advanced SQL queries, it would be great if they started trying out a better tool for the job, like the recently released DSH [1] or (bitrotting?) HaskellDB. Relational Algebra sql query libraries can be very productive to use for 95% of use cases, even if they aren&#39;t &quot;web-scale&quot;.<div>

<br></div><div>[1] <a href="http://hackage.haskell.org/package/DSH">http://hackage.haskell.org/package/DSH</a></div></div><div>[2] <a href="http://hackage.haskell.org/package/TableAlgebra">http://hackage.haskell.org/package/TableAlgebra</a></div>