我有一个包含四个字段的表:a
、b
和。c
d
我想要一个像这样的查询:
select distinct a, b from t;
该文档建议类似
(k/select my-table
(k/modifier "DISTINCT")
(k/fields :a :b))
但是生成的 SQL 是这样的:
SELECT distinct a, b, c, d FROM my_table;
我想要的是:
SELECT distinct a, b FROM my_table;
如何将 distinct 修饰符限制为仅两个字段?
尝试使用不同的修饰符值(例如DISTINCT (a, b)
)会导致 SQL 查询错误。
这是一个完整的例子:
(k/defentity my-table (k/entity-fields :a :b :c :d))
(k/sql-only (k/select my-table (k/fields :a :b)
(k/modifier "DISTINCT")))
"SELECT DISTINCT `my-table`.`a`,
`my-table`.`b`,
`my-table`.`c`,
`my-table`.`d`,
`my-table`.`a`,
`my-table`.`b` FROM `my-table`"