The basic Persistent backend is designed without joins ("web-scale"), 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't "web-scale".<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>