@@ -426,6 +426,8 @@ data Selection outer commons grp schemas params from row where
426426 => NP (Aliased (WindowFunction outer commons grp schemas params from)) row
427427 -> WindowDefinition outer commons grp schemas params from
428428 -> Selection outer commons grp schemas params from row
429+instance Additionally (Selection outer commons grp schemas params from) where
430+ also = Also
429431instance (KnownSymbol col, row ~ '[col ::: ty])
430432 => Aliasable col
431433 (Expression outer commons grp schemas params from ty)
@@ -921,11 +923,16 @@ common
921923common (cte `As` alias) = UnsafeFromClause $
922924 renderSQL cte <+> "AS" <+> renderSQL alias
923925
924−{- | @left & crossJoin right@. For every possible combination of rows from
925− @left@ and @right@ (i.e., a Cartesian product), the joined table will contain
926− a row consisting of all columns in @left@ followed by all columns in @right@.
927− If the tables have @n@ and @m@ rows respectively, the joined table will
928− have @n * m@ rows.
926+instance Additionally (FromClause outer commons schemas params) where
927+ also right left = UnsafeFromClause $
928+ renderSQL left <> ", " <> renderSQL right
929+
930+{- |
931+@left & crossJoin right@. For every possible combination of rows from
932+@left@ and @right@ (i.e., a Cartesian product), the joined table will contain
933+a row consisting of all columns in @left@ followed by all columns in @right@.
934+If the tables have @n@ and @m@ rows respectively, the joined table will
935+have @n * m@ rows.
929936-}
930937crossJoin
931938 :: FromClause outer commons schemas params right