MONGOOSE 使用字符串查找文档 (LIKE %SQL)
MONGOOSE find a document using a string (LIKE %SQL)
我想使用集合中包含的日期字段查找文档
//Document Exemple: MODEL : MY_EVENT
event_time_produce: '2018-01-03T11:00:00.201Z',
event_name : 'show'
我想查找以“2018-01-03T11:00:”开头的所有文档
我想忽略 Millesecobde 和 ISOtype ..etc 的部分
喜欢SQL:
SELECT * from MY_EVENT where event_time_produce LIKE '2018-01-03T11:00:%'
我已经试过了但没有用(猫鼬)
MY_EVENT.find({event_time_produce : {
$regex: new RegExp('^2018-01-03T11:00:00.*$')
}})
.exec(....)
简单的搜索工作:
MY_EVENT.find({event_time_produce : '2018-01-03T11:00:00.201Z'})
.exec(....)
但我想获取 2018 年 1 月 3 日在 11:00:XX
的所有文件
无论秒数,只需验证日期、小时和分钟。
这不是你正则表达式的问题吗?
在 SQL 的示例中,您有 2018-01-03T11:00:%
在 mongo 上,您有 ^2018-01-03T11:00:00.*$
(在 11:00:
之后还有 2 个零)
更新:
如果实际文档中的数据是 ISODate 而不是常规字符串,最好使用这样的范围:
{event_time_produce:{$gte:ISODate("2018-01-03T11:00:00.000+0000"),$lte:ISODate("2018-01-03T11:00:59.999+0000") }}
我想使用集合中包含的日期字段查找文档
//Document Exemple: MODEL : MY_EVENT
event_time_produce: '2018-01-03T11:00:00.201Z',
event_name : 'show'
我想查找以“2018-01-03T11:00:”开头的所有文档
我想忽略 Millesecobde 和 ISOtype ..etc 的部分
喜欢SQL:
SELECT * from MY_EVENT where event_time_produce LIKE '2018-01-03T11:00:%'
我已经试过了但没有用(猫鼬)
MY_EVENT.find({event_time_produce : {
$regex: new RegExp('^2018-01-03T11:00:00.*$')
}})
.exec(....)
简单的搜索工作:
MY_EVENT.find({event_time_produce : '2018-01-03T11:00:00.201Z'})
.exec(....)
但我想获取 2018 年 1 月 3 日在 11:00:XX
的所有文件无论秒数,只需验证日期、小时和分钟。
这不是你正则表达式的问题吗?
在 SQL 的示例中,您有 2018-01-03T11:00:%
在 mongo 上,您有 ^2018-01-03T11:00:00.*$
(在 11:00:
之后还有 2 个零)
更新:
如果实际文档中的数据是 ISODate 而不是常规字符串,最好使用这样的范围:
{event_time_produce:{$gte:ISODate("2018-01-03T11:00:00.000+0000"),$lte:ISODate("2018-01-03T11:00:59.999+0000") }}