@dcj What's a cross join and is it something specific to the database you are using? HoneySQL deliberately only supports ANSI SQL (with very few exceptions) and defers to community libraries to provide DB-specific SQL DSL elements.
For example, here's the PostgreSQL-specific extension library https://github.com/nilenso/honeysql-postgres
I am not a SQL expert by any stretch of the imagination, and I had never heard of this either until today. The complex multi-CTE query I'm attempting to code in Clojure/HoneySQL was written in SQL by a sophisticated SQL person. AFAICT, a cross join is not a Postgres-specific feature, some google searches seem to indicate that other databases support it as well.
In SQL, the CROSS JOIN is used to combine each row of the first table with each row of the second table. It is also known as the Cartesian join since it returns the Cartesian product of the sets of rows from the joined tables.
Also from the wikipedia article:
ANSI-standard SQL specifies five types of JOIN: INNER, LEFT OUTER, RIGHT OUTER, FULL OUTER and CROSS
Hmm, interesting.
That said, you can implement it yourself using HoneySQL today per https://github.com/jkk/honeysql#extensibility
@seancorfield Thanks, I will look into that!