Specifically the following fails with syntax error at or near "SELECT", because the inner sub_select is not properly enclosed in parenthesis.
aggrPrevDate :: MonadIO m => ReaderT SqlBackend m ()
aggrPrevDate = insertSelect . from $ \date -> do
groupBy $ date ^. DateDate
orderBy [asc $ date ^. DateDate]
pure $ PrevDate <# (date ^. DateDate) <&> sub_select (getPrevDate date)
where
getPrevDate date = from $ \d -> do
where_ $ d ^. DateDate <. date ^. DateDate
pure . max_ $ d ^. DateDate
This is with:
esqueleto 2.5.3
persistent 2.7.1
persistent-postgresql 2.6.2.1