diff --git a/statement.go b/statement.go index d24e8e40..5a08ef71 100644 --- a/statement.go +++ b/statement.go @@ -1142,6 +1142,9 @@ func (statement *Statement) genCountSQL(bean interface{}) (string, []interface{} var selectSql = statement.selectStr if len(selectSql) <= 0 { + if statement.IsDistinct { + selectSql = fmt.Sprintf("count(DISTINCT %s)", statement.ColumnStr) + } selectSql = "count(*)" } return statement.genSelectSQL(selectSql, condSQL), append(statement.joinArgs, condArgs...)