Select 查询
select()用于对表格或视图执行SELECT查询。
- 默认情况下,Supabase项目将返回最多1,000行。这个设置可以在项目API设置中更改。建议将其保持较低,以限制意外或恶意请求的有效负载大小。您可以使用range()查询来分页处理数据。
select()
可以与过滤器Filter组合使用select()
可以与修改器Modifier组合使用- 如果您正在使用Supabase平台,
apikey
是一个保留关键字,应避免将其作为列名。
案例教程
案例1 (获取您的数据)#
1 2final data = await supabase 3 .from('cities') 4 .select('name');
案例2 (选择特定的列)#
1 2final data = await supabase 3 .from('countries') 4 .select(''' 5 name, 6 cities ( 7 name 8 ) 9 ''');
案例3 (查询外键表)#
1 2final data = await supabase 3 .from('countries') 4 .select(''' 5 name, 6 cities ( 7 name 8 ) 9 ''');
案例4 (多次查询同一个外键表)#
1 2final data = await supabase 3 .from('messages') 4 .select('*, users!inner(*)') 5 .eq('users.username', 'Jane');
案例5 (使用内连接进行筛选)#
1 2final data = await supabase 3 .from('messages') 4 .select('*, users!inner(*)') 5 .eq('users.username', 'Jane');
案例6 (使用计数选项进行查询)#
1 2final res = await supabase.from('cities').select( 3 'name', 4 const FetchOptions( 5 count: CountOption.exact, 6 ), 7 ); 8 9final count = res.count;
案例7 (查询JSON数据)#
1
2final data = await supabase
3 .from('users')
4 .select('''
5 id, name,
6 address->street
7 ''')
8 .eq('address->postcode', 90210);
案例8 (以CSV格式返回数据)#
1 2final data = await supabase 3 .from('users') 4 .select() 5 .csv();