# 数据库
数据库civetkern基于共享内存存储引擎lmdb开发,并使用PEGTL构建了查询引擎。
# 查询语法
类似于mongodb,实现了部分查询语法,同时针对应用本身,定义了几个关键字
# 查询概要信息
这里的概要信息是指,文件id、文件名、是否已分类/标签
检索所有文件的概要信息:{snap: '*'}
分页检索,例如查看第3页,每页100张图片:{snap: {limit: 100, offset: 100*2}}
# 查询某个文件详细信息
# 查询标签
- 查询标签的概要信息
- 查询单个文件的标签内容
# 查询分类
# 按条件查找相关的文件
- 按关键字搜索,示例如下:
{keyword: '海洋'}
也可以使用数组形式:{keyword: ['海洋']} - 标签搜索
- 日期搜索
大于某个时刻点:{datetime: {$gt: new Date('2020-09-20T00:00:00.000Z')}}
如果要小于某个时刻点,需要将$gt
修改未$lt
- 分类搜索
- 按元信息搜索
按元信息进行搜索功能是针对扩展进行的搜索。例如按颜色搜索: {color: {$near: '#343e58'}}, 按类型检索: {type: ['jpg']}
# 添加/修改数据
# 结构
← 扩展