# `QuackDB.Ecto.Star`
[🔗](https://github.com/elixir-vibe/quackdb/blob/main/lib/quack_db/ecto/star.ex#L2)

DuckDB star and `COLUMNS(...)` expression macros for Ecto SQL generation.

These helpers wrap `QuackDB.SQL.star/1`, `QuackDB.SQL.columns/1,2`, and
`QuackDB.SQL.unpack_columns/1,2` in Ecto fragments.

DuckDB star expressions can expand one Ecto expression into multiple SQL
result columns. That is useful for SQL generation and raw `Repo.query!/2`
execution, but it can surprise Ecto's normal result loader in `Repo.all/2`
select lists. Prefer these macros in predicates or when you intentionally
pass generated SQL to `Repo.query!/2`.

# `columns`
*macro* 

Builds a DuckDB `COLUMNS(...)` expression fragment.

# `star`
*macro* 

Builds a DuckDB star expression fragment.

# `unpack_columns`
*macro* 

Builds a DuckDB `*COLUMNS(...)` unpacked columns expression fragment.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
