lib/dataset/query.js
function (args) {
            args = argsToArray(arguments);
            if (args.length && !this.supportsDistinctOn) {
                throw new QueryError("DISTICT ON is not supported");
            }
            args = args.map(function (a) {
                return isString(a) ? new Identifier(a) : a;
            });
            return this.mergeOptions({distinct: args});
        }
function (args) {
            args = argsToArray(arguments);
            if (args.length && !this.supportsDistinctOn) {
                throw new QueryError("DISTICT ON is not supported");
            }
            args = args.map(function (a) {
                return isString(a) ? new Identifier(a) : a;
            });
            return this.mergeOptions({distinct: args});
        }
function ( args ) { args = argsToArray ( arguments ) ; if ( args . length && ! this . supportsDistinctOn ) { throw new QueryError ( "DISTICT ON is not supported" ) ; } args = args . map ( function ( a ) { return isString ( a ) ? new Identifier ( a ) : a ; } ) ; return this . mergeOptions ( { distinct : args } ) ; }
Returns a copy of the dataset with the SQL DISTINCT clause.
The DISTINCT clause is used to remove duplicate rows from the
output.  If arguments are provided, uses a DISTINCT ON clause,
in which case it will only be distinct on those columns, instead
of all returned columns.

@example

DB.from("items").distinct().sqll
//=> SELECT DISTINCT * FROM items
DB.from("items").order("id").distinct("id").sql;
//=> SELECT DISTINCT ON (id) * FROM items ORDER BY id

@throws {patio.QueryError}  If arguments are given and DISTINCT ON is not supported.
@param {...String|...patio.sql.Identifier} args variable number of arguments used to create
the DISTINCT ON clause.
@return {patio.Dataset} a cloned dataset with the DISTINCT/DISTINCT ON clause added.
Returns a copy of the dataset with the SQL DISTINCT clause . The DISTINCT clause is used to remove duplicate rows from the output . If arguments are provided uses a DISTINCT ON clause in which case it will only be distinct on those columns instead of all returned columns .