public override void ApplySkipTake(StringBuilder sql, StringBuilder orderClause, int take, int skip) {
if (take > 0 && skip > 0) {
sql.Append(" limit @take offset @skip");
}
else if (take > 0) {
sql.Append(" limit @take");
}
else if (skip > 0) {
// yikes, limit is not optional so specify massive number 2^64-1
sql.Append(" limit 18446744073709551615 offset @skip");
}
}