我有一个有2列的表; ID (int) and EntityData (JSON)
。我在C#中以Dictionary的形式创建了一个过滤器对象。我想获取满足我的过滤器中键值对数据的所有行。
示例过滤器是:
{
"Name": "mike",
"Location": "Lagos"
}
这应该会获取EntityData名称为mike且Location为Lagos的所有行。
答案 0 :(得分:0)
单个查询可能如下所示:
SELECT * FROM table WHERE json_field->>'Name' = 'mike' AND json_field->>'Location' = 'Lagos'
您可以使用参数占位符('mike'
,'Lagos'
)替换@name
和@location
,并对字典的所有条目重复运行此查询。为了获得最佳性能,您还可以预先准备命令,甚至可以通过将查询多次连接到同一CommandText
来在一个命令中批量处理所有查询。