Max*_*Max 9 sql supabase supabase-database
我试图弄清楚如何在 supabase 中实现查询:
模式
CREATE TABLE cars
(
id SERIAL PRIMARY KEY,
brand TEXT
);
CREATE TABLE stores
(
id SERIAL PRIMARY KEY,
car INT REFERENCES car(id),
name TEXT
);
Run Code Online (Sandbox Code Playgroud)
我想要获取所有出售品牌“x”汽车的商店
在 Supabase 中我可以这样过滤:
let { data: stores } = await supabase
.from('stores')
.select("*")
.eq('name', 'Ford car shop')
// Returns
{
id: 123456,
car:"Ford",
name:"Ford car shop"
}
Run Code Online (Sandbox Code Playgroud)
或者像这样加入:
let { data: stores } = await supabase
.from('stores')
.select(`
*,
cars (
brand
)
`)
.eq('name', 'Ford car shop')
// Returns
{
id: 123456,
car:"Ford",
cars: {
id: 654321,
brand: "Ford"
}
name:"Ford car shop"
}
Run Code Online (Sandbox Code Playgroud)
但是我如何使用supabase sdk 按商店所售汽车的品牌来过滤商店呢?
小智 14
2022:现在可以通过 supabase 客户端实现这一点。您可以使用该!inner()
功能。
let { data: stores } = await supabase
.from('stores')
.select('*, cars!inner(*)')
.eq('cars.brand', 'Ford')
Run Code Online (Sandbox Code Playgroud)
文档在这里:使用内部联接进行过滤