第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

怎么在MongoDB中執(zhí)行Javascript代碼

怎么在MongoDB中執(zhí)行Javascript代碼

侃侃無(wú)極 2019-03-21 14:14:46
怎么在MongoDB中執(zhí)行Javascript代碼
查看完整描述

2 回答

?
慕仙森

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊

以前并沒(méi)有留意用JavaScript管理MongoDB,不過(guò)這個(gè)還是很有用的功能。特別是可以寫(xiě)一些定時(shí)腳本,定期檢查數(shù)據(jù)庫(kù),做一些管理任務(wù)。
1. mongo shell中可以直接運(yùn)行JavaScript代碼
比如:
> new Date()
ISODate("2013-12-12T07:37:00.074Z")
> x = new Date();
ISODate("2013-12-12T07:37:05.724Z")
> x.getTime();
1386833825724
> var y = Date();
> y.getTime()
Thu Dec 12 15:37:26.805 TypeError: Object Thu Dec 12 2013 15:37:21 GMT+0800 (CST) has no method 'getTime'
>

如果想獲得epoch以來(lái)的毫秒數(shù),必須用new Date()。
而Date(),似乎就只是一個(gè)函數(shù),返回一個(gè)字符串而已。沒(méi)什么大作用,反而容易混淆人的概念。
b. Date對(duì)象提供了getTime()
2. 查詢語(yǔ)句中,可以用$where operator來(lái)執(zhí)行JavaScript函數(shù), 比如:
db.display.find({$and: [{$where: function() {return new Date().getTime(

3. 可以將代碼寫(xiě)到一個(gè)js文件中,然后用mongo命令執(zhí)行
比如:下面將當(dāng)前時(shí)間和last_active_time字段的值的差大于300秒的,狀態(tài)為offline的document找出來(lái),并顯示。
cursor = db.display.find({$and: [{$where: function() {return new Date().getTime() / 1000 - this.last_active_time > 300}}, {status: "offline"}]})
while (cursor.hasNext()) {
printjson(cursor.next());
}

然后這樣執(zhí)行:
mongo localhost/mydb test.js



查看完整回答
反對(duì) 回復(fù) 2019-03-24
?
叮當(dāng)貓咪

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊

1. mongo shell中可以直接運(yùn)行JavaScript代碼
比如:
> new Date()
ISODate("2013-12-12T07:37:00.074Z")
> x = new Date();
ISODate("2013-12-12T07:37:05.724Z")
> x.getTime();
1386833825724
> var y = Date();
> y.getTime()
Thu Dec 12 15:37:26.805 TypeError: Object Thu Dec 12 2013 15:37:21 GMT+0800 (CST) has no method 'getTime'
>

如果想獲得epoch以來(lái)的毫秒數(shù),必須用new Date()。
而Date(),似乎就只是一個(gè)函數(shù),返回一個(gè)字符串而已。沒(méi)什么大作用,反而容易混淆人的概念。
b. Date對(duì)象提供了getTime()
2. 查詢語(yǔ)句中,可以用$where operator來(lái)執(zhí)行JavaScript函數(shù), 比如:
db.display.find({$and: [{$where: function() {return new Date().getTime(

3. 可以將代碼寫(xiě)到一個(gè)js文件中,然后用mongo命令執(zhí)行
比如:下面將當(dāng)前時(shí)間和last_active_time字段的值的差大于300秒的,狀態(tài)為offline的document找出來(lái),并顯示。
cursor = db.display.find({$and: [{$where: function() {return new Date().getTime() / 1000 - this.last_active_time > 300}}, {status: "offline"}]})
while (cursor.hasNext()) {
printjson(cursor.next());
}

然后這樣執(zhí)行:
mongo localhost/mydb test.js



查看完整回答
反對(duì) 回復(fù) 2019-03-24
  • 2 回答
  • 0 關(guān)注
  • 825 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)