query method

Future<QueryResult> query(
  1. List<Object> columns, {
  2. required Object from,
  3. Object? where,
  4. Object? groupBy,
  5. Object? having,
  6. Object? window,
  7. Object? orderBy,
  8. int? limit,
  9. int? offset,
  10. List? args,
})

query([], from:Person) query("*", from:Person) query(Person.values, from:Person)

Implementation

Future<QueryResult> query(
  List<Object> columns, {
  required Object from,
  Object? where,
  Object? groupBy,
  Object? having,
  Object? window,
  Object? orderBy,
  int? limit,
  int? offset,
  List<dynamic>? args,
}) {
  Express e = SELECT(columns).FROM(from);
  if (where != null) e = e.WHERE(where);
  if (groupBy != null) e = e.GROUP_BY(groupBy);
  if (having != null) e = e.HAVING(having);
  if (window != null) e = e.WINDOWS(window);
  if (orderBy != null) e = e.ORDER_BY(orderBy);
  if (limit != null) {
    e = e.LIMIT(limit);
    if (offset != null) e = e.OFFSET(offset);
  }
  e.addArgs(args);
  return e.query(this);
}