order method
Orders the result with the specified column
.
When ascending
is true, the result will be in ascending order.
When nullsFirst
is true, null
s appear first.
final data = await supabase
.from('users')
.select()
.order('username', ascending: false);
If column
is a referenced table column, referencedTable
has to be set
final data = await supabase
.from('users')
.select('messages(*)')
.order('channel_id',
referencedTable: 'messages', ascending: false);
Implementation
PostgrestTransformBuilder<T> order(
String column, {
bool ascending = false,
bool nullsFirst = false,
String? referencedTable,
}) {
final key = referencedTable == null ? 'order' : '$referencedTable.order';
final existingOrder = _url.queryParameters[key];
final value = '${existingOrder == null ? '' : '$existingOrder,'}'
'$column.${ascending ? 'asc' : 'desc'}.${nullsFirst ? 'nullsfirst' : 'nullslast'}';
final url = overrideSearchParams(key, value);
return PostgrestTransformBuilder(copyWithUrl(url));
}