@@ -295,7 +295,7 @@ renderQueryClause = \case
295295 Subquery qry -> renderQuery qry
296296 where
297297 renderAliasPartMaybe, renderValuePartMaybe
298− :: ColumnExpression schema from grp params column -> Maybe ByteString
298+ :: ColumnExpression db from grp params column -> Maybe ByteString
299299 renderAliasPartMaybe = \case
300300 DefaultAs _ -> Nothing
301301 Specific (_ `As` name) -> Just $ renderAlias name
@@ -303,7 +303,7 @@ renderQueryClause = \case
303303 DefaultAs _ -> Nothing
304304 Specific (value `As` _) -> Just $ renderExpression value
305305 renderAliasPart, renderValuePart
306− :: ColumnExpression schema from grp params column -> ByteString
306+ :: ColumnExpression db from grp params column -> ByteString
307307 renderAliasPart = \case
308308 DefaultAs name -> renderAlias name
309309 Specific (_ `As` name) -> renderAlias name
@@ -313,67 +313,67 @@ renderQueryClause = \case
313313
314314pattern Values_
315315 :: SOP.SListI columns
316− => NP (ColumnExpression schema '[] 'Ungrouped params) columns
317− -> QueryClause schema params columns
316+ => NP (ColumnExpression db '[] 'Ungrouped params) columns
317+ -> QueryClause db params columns
318318pattern Values_ vals = Values vals []
319319
320−data ColumnExpression schema from grp params column where
320+data ColumnExpression db from grp params column where
321321 DefaultAs
322322 :: KnownSymbol col
323323 => Alias col
324− -> ColumnExpression schema from grp params (col ::: 'Def :=> ty)
324+ -> ColumnExpression db from grp params (col ::: 'Def :=> ty)
325325 Specific
326− :: Aliased (Expression schema from grp params) (col ::: ty)
327− -> ColumnExpression schema from grp params (col ::: defness :=> ty)
328−
329−instance (KnownSymbol alias, column ~ (alias ::: defness :=> ty))
330− => Aliasable alias
331− (Expression schema from grp params ty)
332− (ColumnExpression schema from grp params column) where
333− expression `as` alias = Specific (expression `As` alias)
334−instance (KnownSymbol alias, columns ~ '[alias ::: defness :=> ty])
335− => Aliasable alias
336− (Expression schema from grp params ty)
337− (NP (ColumnExpression schema from grp params) columns) where
338− expression `as` alias = expression `as` alias :* Nil
326+ :: Aliased (Expression db from grp params) (col ::: ty)
327+ -> ColumnExpression db from grp params (col ::: defness :=> ty)
328+
329+instance (KnownSymbol col, column ~ (col ::: defness :=> ty))
330+ => Aliasable col
331+ (Expression db from grp params ty)
332+ (ColumnExpression db from grp params column) where
333+ expression `as` col = Specific (expression `As` col)
334+instance (KnownSymbol col, columns ~ '[col ::: defness :=> ty])
335+ => Aliasable col
336+ (Expression db from grp params ty)
337+ (NP (ColumnExpression db from grp params) columns) where
338+ expression `as` col = expression `as` col :* Nil
339339instance (KnownSymbol col, column ~ (col ::: 'Def :=> ty))
340− => DefaultAliasable col (ColumnExpression schema from grp params column) where
340+ => DefaultAliasable col (ColumnExpression db from grp params column) where
341341 defaultAs = DefaultAs
342342instance (KnownSymbol col, columns ~ '[col ::: 'Def :=> ty])
343− => DefaultAliasable col (NP (ColumnExpression schema from grp params) columns) where
343+ => DefaultAliasable col (NP (ColumnExpression db from grp params) columns) where
344344 defaultAs col = defaultAs col :* Nil
345345
346−instance (HasUnique table from columns, Has column columns ty, colty ~ (column ::: defness :=> ty))
347− => IsLabel column (ColumnExpression schema from 'Ungrouped params colty) where
348− fromLabel = fromLabel @column `as` Alias
349−instance (HasUnique table from columns, Has column columns ty, columnLabel ~ column, coltys ~ '[column ::: defness :=> ty])
350− => IsLabel columnLabel
351− (NP (ColumnExpression schema from 'Ungrouped params) coltys) where
352− fromLabel = fromLabel @column `as` Alias
353−
354−instance (Has table from columns, Has column columns ty, colty ~ (column ::: defness :=> ty))
355− => IsQualified table column (ColumnExpression schema from 'Ungrouped params colty) where
356− tab ! column = tab ! column `as` column
357−instance (Has table from columns, Has column columns ty, coltys ~ '[column ::: defness :=> ty])
358− => IsQualified table column (NP (ColumnExpression schema from 'Ungrouped params) coltys) where
359− tab ! column = tab ! column `as` column
346+instance (HasUnique tab from row, Has col row ty, colty ~ (col ::: defness :=> ty))
347+ => IsLabel col (ColumnExpression db from 'Ungrouped params colty) where
348+ fromLabel = fromLabel @col `as` Alias
349+instance (HasUnique tab from row, Has col row ty, coltys ~ '[col ::: defness :=> ty])
350+ => IsLabel col
351+ (NP (ColumnExpression db from 'Ungrouped params) coltys) where
352+ fromLabel = fromLabel @col `as` Alias
353+
354+instance (Has tab from row, Has col row ty, colty ~ (col ::: defness :=> ty))
355+ => IsQualified tab col (ColumnExpression db from 'Ungrouped params colty) where
356+ tab ! col = tab ! col `as` col
357+instance (Has tab from row, Has col row ty, coltys ~ '[col ::: defness :=> ty])
358+ => IsQualified tab col (NP (ColumnExpression db from 'Ungrouped params) coltys) where
359+ tab ! col = tab ! col `as` col
360360
361361instance
362− ( HasUnique table from columns
363− , Has column columns ty
364− , GroupedBy table column bys
365− , colty ~ (column ::: defness :=> ty)
366− ) => IsLabel column
367− (ColumnExpression schema from ('Grouped bys) params colty) where
368− fromLabel = fromLabel @column `as` Alias
362+ ( HasUnique tab from row
363+ , Has col row ty
364+ , GroupedBy tab col bys
365+ , colty ~ (col ::: defness :=> ty)
366+ ) => IsLabel col
367+ (ColumnExpression db from ('Grouped bys) params colty) where
368+ fromLabel = fromLabel @col `as` Alias
369369instance
370− ( HasUnique table from columns
371− , Has column columns ty
372− , GroupedBy table column bys
373− , coltys ~ '[column ::: defness :=> ty]
374− ) => IsLabel column
375− (NP (ColumnExpression schema from ('Grouped bys) params) coltys) where
376− fromLabel = fromLabel @column `as` Alias
370+ ( HasUnique tab from row
371+ , Has col row ty
372+ , GroupedBy tab col bys
373+ , coltys ~ '[col ::: defness :=> ty]
374+ ) => IsLabel col
375+ (NP (ColumnExpression db from ('Grouped bys) params) coltys) where
376+ fromLabel = fromLabel @col `as` Alias
377377
378378instance
379379 ( Has tab from row