婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MongoDB批量將時間戳轉為通用日期格式示例代碼

MongoDB批量將時間戳轉為通用日期格式示例代碼

熱門標簽:老虎洗衣店地圖標注 濟南電銷機器人加盟公司 怎么投訴地圖標注 呼和浩特電銷外呼系統加盟 杭州人工電銷機器人價格 蘋果汽車租賃店地圖標注 電銷機器人是什么軟件 云南外呼系統 廣州長安公司怎樣申請400電話

前言

時間戳(timestamp),通常是一個字符序列,唯一地標識某一刻的時間。本文將詳細介紹MongoDB批量將時間戳轉為通用日期格式的相關內容,下面話不多說了,來一起看看詳細的介紹吧

1,官網提供的MONGODB遍歷腳本:

官方文檔地址:https://docs.mongodb.org/manual/tutorial/remove-documents/
>var arr = ["ab","cd","ef"]
>var show = function(value,index,ar){ print(value) }
>arr.forEach(show)
ab
cd
ef

2,MONGODB的模糊查詢

MongoDB模糊查詢方法示例:

模糊查詢:tname包含某個關鍵字測試'

cd /opt/soft/mongodb/bin
./mongo --host 192.168.0.1 --port 17017 test
db.test_info.find({"tname": {$regex: '測試', $options:'i'}}) 
db.test_info.find({"tname": {$regex:/測試.*/i}}) 

需要找出所有時間戳的數據記錄,因為時間戳多是以數字開頭,最近幾年的都是14XXX的,所以正則表達式以14開頭搜索,實現方式如下:

mongos> use pos
switched to db pos
mongos> 
db.paymentinfo.find({"paymentTime": {$regex: '14', $options:'i'}}).count();
mongos> db.paymentinfo.find({"paymentTime": {$regex: '144', $options:'i'}}).count();
1995
mongos> 

查詢到有1995條記錄,蠻多的,需要處理記錄數不少。

建立遍歷函數:

db.cms_Content.find({"userId":"444333f107624489bae28140d1970bbc"}).forEach(function(x) {
 if(x.titlex.fileName){
 print(x.contentId);
db.cms_Content.update({"contentId":x.contentId},{"$set":{"title":x.fileName}});
 }
})

PS:證明不能用,效果一般

3,首先刪除一部分TXNTYPE為1的脹數據

刪除查詢出來的集合數據

db.paymentinfo.remove( {"txnType": {$regex: '1', $options:'i'}}, 300 );

刪除所以查詢出來的記錄:

db.paymentinfo.remove( {"txnType": {$regex: '1', $options:'i'}});

刪除paymentTime=0的數據記錄

db.paymentinfo.remove( { paymentTime : "0" } )

4,遺留問題需要解決

for (var i = 0, len = 3; i len; i++) {var child=dschilds[i]; var id=child._id; printjson((id)); var paymentTime=child.paymentTime; printjson(paymentTime)}  批量修改校驗錯誤日期數據的期待解決的問題

 db.paymentinfo.update({"_id": ObjectId("55d56fdbe4b0c1f89b5356ae")},{$set:{"paymentTime" : "14400511608049527"}},true);
 var ds= db.paymentinfo.find({"paymentTime": {$regex: '144', $options:'i'}});
 for (var i = 0, len = 1; i  len; i++) {
 var child=dschilds[i]; 
 var id=child._id; 
 printjson(id);
 var paymentTime=child.paymentTime; 
 var datestr=paymentTime 
 #問題在這里,這個日期是時間戳,比如1440560826340的模式,請問下,在mongodb shell里面如何將時間戳變成字符串'2015-12-15 12:34:16'這樣的日期字符串呢?
 db.paymentinfo.update({"_id": id},{$set:{"paymentTime" :datestr}},true);
 db.paymentinfo.find({"_id": id});
 }
 db.paymentinfo.find({"_id":ObjectId("55dd36dc45ce9e75b91eb340")}).forEach(function (a) { a["paymentTime"] = new Date(parseInt(paymentTime) * 1000).toLocaleString().replace(/:\d{1,2}$/,' '); printjson(a) });

看到這里也不能解決我的問題,所以思路停止了,toLocaleString()獲得的是GST的日期格式串,不是我需要的yyyy-mm-dd hh:mm:ss結構的日期格式數

5,找到突破口,使用JAVASCRIPT

mongodb官網已經報錯提示有說明,mongodb shell里面是可以調用JavaScript腳本,這么說來,直接在窗口里面寫js腳本來實現就ok了,然后準備拿一條數據來驗證是否正確,結果成功了,驗證腳本如下:  – 單獨一條集合數據中,將時間戳變成日期字符串:

db.paymentinfo.find({"_id":ObjectId("55d56cbbe4b0c1f89b5356a4")}).forEach(function (a) { 
 #這個函數是在月、日、時分秒的個位數字前面補0操作的
 function tran_val(val){
 if(parseInt(val)10){
 val="0" +val;
 }
 return val;
 }
 # 這里是paymentTime為時間戳
 var datenew = new Date(parseInt(paymentTime)); 
 # 獲取年月日
 var year=datenew.getFullYear(); 
 var month=tran_val(datenew.getMonth()+1);
 var date=tran_val(datenew.getDate()); 
 # 獲取時分秒
 var hour=tran_val(datenew.getHours());
 var minute=tran_val(datenew.getMinutes()); 
 var second=tran_val(datenew.getSeconds()); 
 # 組裝成標準的日期格式yyyy-mm-dd hh:mm:ss 
 var datastr=year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; 
 a["paymentTime"]=datastr
 print(paymentTime); 
 printjson(a) }
 );

上面的例子表明直接用js腳本可以實現時間戳到日期格式轉變,那么下面就開始for循環批量修改:

 db.paymentinfo.update({"_id": ObjectId("55d56fdbe4b0c1f89b5356ae")},{$set:{"paymentTime" : "14400511608049527"}},true);
 # 使用遍歷數組的方式來操作144開頭的時間戳
 var ds= db.paymentinfo.find({"paymentTime": {$regex: '144', $options:'i'}});
 var dschilds=ds.toArray();
 for (var i = 0;i dschilds.length ; i++) {
 var child=dschilds[i]; 
 var id=child._id; 
 var paymentTime=child.paymentTime;
 print(paymentTime);
 function tran_val(val){
  if(parseInt(val)10){
  val="0" +val;
  }
  return val;
 }
 var datenew = new Date(parseInt(paymentTime)); 
 var year=datenew.getFullYear(); 
 var month=tran_val(datenew.getMonth()+1);
 var date=tran_val(datenew.getDate()); 
 var hour=tran_val(datenew.getHours());
 var minute=tran_val(datenew.getMinutes()); 
 var second=tran_val(datenew.getSeconds());
 var datestr=year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; 
 # 這里開始進行修改操作
 db.paymentinfo.update({"_id": id},{$set:{"paymentTime" :datestr}},true);
 db.paymentinfo.find({"_id": id});
 }
 # 使用遍歷數組的方式來操作145開頭的時間戳
 var ds= db.paymentinfo.find({"paymentTime": {$regex: '145', $options:'i'}});
 var dschilds=ds.toArray();
 for (var i = 0;i dschilds.length ; i++) {
 var child=dschilds[i]; 
 var id=child._id; 
 var paymentTime=child.paymentTime;
 print(paymentTime);
 function tran_val(val){
  if(parseInt(val)10){
  val="0" +val;
  }
  return val;
 }
 var datenew = new Date(parseInt(paymentTime)); 
 var year=datenew.getFullYear(); 
 var month=tran_val(datenew.getMonth()+1);
 var date=tran_val(datenew.getDate()); 
 var hour=tran_val(datenew.getHours());
 var minute=tran_val(datenew.getMinutes()); 
 var second=tran_val(datenew.getSeconds());
 var datestr=year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; 
 db.paymentinfo.update({"_id": id},{$set:{"paymentTime" :datestr}},true);
 db.paymentinfo.find({"_id": id});
 } 

6,碰到新的問題,統一日期格式,將斜杠變成橫杠

–批量修改日期 斜杠變成橫杠

 var ds= db.paymentinfo.find({"paymentTime": {$regex: '/', $options:'i'}});
 var dschilds=ds.toArray();
 for (var i = 0;i dschilds.length; i++) {
 var child=dschilds[i]; 
 var id=child._id;
 var paymentTime=child.paymentTime;
 var paymentTime2=paymentTime.replace(/\//g,"-");
 db.paymentinfo.update({"_id": id},{$set:{"paymentTime" :paymentTime2}},true);
 print(paymentTime);print(paymentTime2);
 db.paymentinfo.find({"_id": id});
 } 
-- insert data
insert into t1 select 1,'a' from db1.t2;
call db1.proc_get_fints

OK,到此圓滿解決

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • 利用Mongoose讓JSON數據直接插入或更新到MongoDB
  • JSON 的正確用法探討:Pyhong、MongoDB、JavaScript與Ajax
  • python讀取json文件并將數據插入到mongodb的方法
  • MongoDB執行mongoexport時的異常及分析(數字類型的查詢)
  • Python實現批量讀取圖片并存入mongodb數據庫的方法示例
  • Mongodb批量刪除gridfs文件實例
  • MongoDB單表數據的導出和恢復實例講解
  • MongoDB備份、還原、導出、導入、克隆操作示例
  • 深入分析Mongodb數據的導入導出
  • MongoDB導出查詢結果到文件例子
  • mongodb 數據庫操作--備份 還原 導出 導入
  • MongoDB使用mongoexport和mongoimport命令,批量導出和導入JSON數據到同一張表的實例

標簽:無錫 自貢 玉林 雞西 興安盟 廈門 遼陽 泰安

巨人網絡通訊聲明:本文標題《MongoDB批量將時間戳轉為通用日期格式示例代碼》,本文關鍵詞  MongoDB,批量,將,時間,戳,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MongoDB批量將時間戳轉為通用日期格式示例代碼》相關的同類信息!
  • 本頁收集關于MongoDB批量將時間戳轉為通用日期格式示例代碼的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美三级在线看| 日韩精品一区二区三区在线观看| 制服丝袜亚洲播放| 精品国产凹凸成av人导航| 2021国产精品久久精品| 国产精品天干天干在观线| 欧美sm极限捆绑bd| 看电视剧不卡顿的网站| 极品销魂美女一区二区三区| 成人国产精品免费观看| 婷婷国产v国产偷v亚洲高清| 亚洲午夜久久久久久久久电影院| 亚洲成av人影院| 99久久精品免费| 欧美挠脚心视频网站| 亚洲欧美成人一区二区三区| 亚洲mv在线观看| 91亚洲精品乱码久久久久久蜜桃 | 国产精品国产自产拍高清av| 国产精品对白交换视频| 欧美视频完全免费看| 色妞www精品视频| 精品sm在线观看| 亚洲综合另类小说| www..com久久爱| 欧美国产日韩精品免费观看| 国产一区福利在线| 欧美三区在线观看| 免费观看久久久4p| 亚洲1区2区3区视频| 亚洲成人午夜电影| 亚洲三级在线播放| 国产一区二区在线影院| 亚洲国产精品二十页| 国产精品996| 久久久久综合网| 另类小说视频一区二区| 精品国产免费视频| av不卡在线播放| 最新热久久免费视频| 天堂在线一区二区| 日韩一级黄色大片| www.在线成人| 亚洲激情六月丁香| 制服丝袜激情欧洲亚洲| 日韩va亚洲va欧美va久久| 日韩一二三区视频| 国产精品亚洲人在线观看| 中文字幕亚洲成人| 欧美精品第1页| 激情综合网av| 麻豆久久久久久久| 久久婷婷色综合| 欧美一区二区福利在线| 久久精品av麻豆的观看方式| 日韩一区二区三区四区五区六区| 日本女优在线视频一区二区| 日韩美女精品在线| 26uuu欧美| 欧美片在线播放| 日本成人在线视频网站| 日本成人在线看| 亚洲一区二区三区四区在线观看 | 91精品久久久久久久久99蜜臂| 成人精品视频一区二区三区尤物| 国产风韵犹存在线视精品| 日本不卡一区二区三区高清视频| 亚洲午夜电影网| 一区二区三区四区不卡在线 | 亚洲国产精品成人综合色在线婷婷| 91精品国产福利在线观看| 成人精品一区二区三区四区| 欧美一区二区三区婷婷月色 | 日韩亚洲欧美成人一区| 欧美激情一区二区三区在线| 日本在线观看不卡视频| 99久久精品99国产精品| 国产亚洲一区二区在线观看| 亚洲福中文字幕伊人影院| 五月天婷婷综合| 91免费国产在线观看| 欧美三级午夜理伦三级中视频| 欧美大片免费久久精品三p| 亚洲精品视频观看| 色诱视频网站一区| 午夜免费久久看| 91美女片黄在线观看| 成人永久aaa| 久久精品视频免费| 亚洲美女视频在线观看| 热久久一区二区| 精品伊人久久久久7777人| 色诱亚洲精品久久久久久| 久久免费视频色| 国产伦精品一区二区三区视频青涩 | 久久99热这里只有精品| 国产夜色精品一区二区av| 精品国产一二三区| 午夜精品视频在线观看| 91丝袜呻吟高潮美腿白嫩在线观看| 日韩免费高清av| 日韩中文欧美在线| 99视频精品免费视频| 国产片一区二区三区| 男人的天堂亚洲一区| 99精品视频一区| 美国一区二区三区在线播放| 国产在线精品一区在线观看麻豆| 国产剧情在线观看一区二区| 国产精品一卡二卡在线观看| 国产精品国产三级国产aⅴ中文 | 99久久777色| 欧美精品一区二区三区很污很色的 | 久久久国产综合精品女国产盗摄| 亚洲尤物在线视频观看| 97精品久久久午夜一区二区三区 | 裸体一区二区三区| 精品国产髙清在线看国产毛片| 《视频一区视频二区| 成人免费高清在线| 欧美午夜精品电影| 自拍av一区二区三区| 日本不卡在线视频| 精品国产亚洲一区二区三区在线观看| 日本欧美加勒比视频| 精品免费视频一区二区| 韩国理伦片一区二区三区在线播放| 久久久久99精品国产片| 韩国女主播成人在线观看| 亚洲一区自拍偷拍| 国产嫩草影院久久久久| 色综合久久综合中文综合网| 9久草视频在线视频精品| 这里只有精品99re| 亚洲自拍偷拍麻豆| 国产日产欧美一区二区视频| 欧美亚一区二区| 成人免费毛片高清视频| 日韩电影在线观看一区| 一区二区三区美女视频| 久久精品一区二区三区四区| 日韩西西人体444www| 欧美日韩成人在线| 欧美亚洲一区二区在线观看| 国产剧情一区在线| 色哟哟欧美精品| 欧美又粗又大又爽| 国产精品视频九色porn| 一区二区激情视频| 欧美一区二区久久| 26uuu成人网一区二区三区| 亚洲天堂精品在线观看| 久久不见久久见中文字幕免费| 日韩在线a电影| 成人av在线资源| 91在线免费播放| 欧美国产精品一区| 国产剧情一区在线| 国产精品国产三级国产a| 成人精品免费网站| 一本到不卡免费一区二区| 亚洲欧洲一区二区三区| 欧美图区在线视频| 欧美mv和日韩mv国产网站| 国产精品久久久久毛片软件| 亚洲国产精品久久久久婷婷884| 久久国产尿小便嘘嘘尿| 欧美日韩aaaaaa| 久久精品亚洲乱码伦伦中文| 婷婷丁香久久五月婷婷| 欧美专区日韩专区| 成人黄色网址在线观看| 婷婷综合另类小说色区| 欧美日韩久久一区二区| 欧美变态tickling挠脚心| 日本中文字幕不卡| 日韩三级在线观看| 美国欧美日韩国产在线播放| 色香色香欲天天天影视综合网| 欧美精品一区二区三区高清aⅴ | 欧美日韩视频不卡| 亚洲欧美日韩精品久久久久| 在线亚洲一区二区| 日本欧美一区二区在线观看| 中文字幕亚洲一区二区av在线 | 一区二区三区在线不卡| 色94色欧美sute亚洲线路一久| 亚洲成a天堂v人片| 欧美不卡一区二区| 成人午夜私人影院| 亚洲激情成人在线| 亚洲精品在线免费观看视频| 欧美午夜免费电影| 一区二区视频在线| 精品少妇一区二区| 色综合久久综合| 亚洲精品一区二区三区蜜桃下载 | 日本电影欧美片| 国产在线精品一区二区不卡了| 亚洲电影在线免费观看|