join method

Future<DbResponse> join({
  1. List<Column> columns = const [],
  2. required List<Join> joins,
  3. String? tableAs,
  4. Where? where,
  5. OrderBy? orderBy,
  6. int? limit,
})

Implementation

Future<DbResponse> join(
    {List<Column> columns = const [],
    required List<Join> joins,
    String? tableAs,
    Where? where,
    OrderBy? orderBy,
    int? limit}) async {
  String query =
      'SELECT ${columns.isEmpty ? "*" : columns.map((val) => '"$val"').join(',')} FROM "$tableName" ${tableAs == null ? "" : "AS $tableAs"} ${joins.map(
            (e) => e.query,
          ).join(" ")} ${getQuery(where: where, orderBy: orderBy, limit: limit)}';
  var dbRes = await db.query(query);

  return DbResponse(
      dbRes.columnDescriptions.map((e) => e.columnName).toList(),
      List<List>.from(dbRes.toList()));
}