dictionary - 如何在 map 上使用类似 ORM 的查询?

标签 dictionary go

我创建了一片具有 3 个属性的结构

type Person struct {
  age int
  gender string
  name string
}

如何从符合我条件的 slice 中提取项目?

比如我想做的

var persons []Person = mySliceOfPersons
person := getFrom(persons).Where(age ==10).Where(gender == "male")

这里的目的是将数据保存在内存中,不受IO限制。 (我期望每秒有数千次调用)。我是 Go 的新手,我不确定在哪里可以找到执行此操作的软件包。数据来自 Json 而不是数据库,所以我认为我不能使用 sql 包。

最佳答案

此解决方案是一个数据库,但您可以将其嵌入到您的应用程序中使用,而不是依赖外部数据库:https://github.com/HouzuoGuo/tiedot

另一种可能性是像这样的方法,它针对本地平面文件使用 sql 包,这可能会被调整以针对 map?: https://github.com/dinedal/textql 运行

关于dictionary - 如何在 map 上使用类似 ORM 的查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28437937/

相关文章:

c++ - 在类方法内部访问和分配的多维 map 模板

c++ - 如何从着色 map 中获取国家数量?

go - 我的 golang 代码有什么问题?

Go:将空结构编码为 json

python - 使用包含重复值的列表在 python 中生成字典列表

python - 获取字典上存在特定键值对的列表

python - 如何获取字典列表中具有最高值的字典

json - 解码 JSON 保留空值

go - 在 golang 的字符串数组中打印特定字节的值

arrays - 将字节数组转换为 int64 golang 数组