Is there a way to make the following?
(honey.sql/format
{:select [[:a :some.kw.with.dots]]
:from [:b]
:order-by [[:some.kw.with.dots :asc]]}
{:quoted true
:dialect :mysql})
produce
SELECT `a` AS `some.kw.with.dots` FROM `b` ORDER BY `some.kw.with.dots` ASC`
as opposed to
SELECT `a` AS `some.kw.with.dots` FROM `b` ORDER BY `some`.`kw`.`with`.`dots` ASC`
It looks like I can provide [:alias :.with.dots] , but that would have other consequences elsewhere (big ol’ codebase) so wondering in case I’ve missed a trickAwesome, got it, thanks for your help!!
Column names like :a.b.c are always mapped to "a"."b"."c" quoted (with backtick instead of double-quote for MySQL).
Aliases explicitly follow different rules -- they are single names, not schema.table.column -- hence the :alias special form to treat a dotted-keyword as if it were an alias.
See https://github.com/seancorfield/honeysql/issues/497 from mid-2023.