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

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

從日期字符串計(jì)算整年

從日期字符串計(jì)算整年

慕萊塢森 2023-03-10 14:00:37
我目前在 Node 中使用貓鼬作為數(shù)據(jù)庫(kù)。我有兩個(gè)模型 product 和 customer 。每當(dāng)客戶(hù)購(gòu)買(mǎi)產(chǎn)品時(shí),當(dāng)前日期就會(huì)存儲(chǔ)在產(chǎn)品的SellingDate屬性中?,F(xiàn)在我想要實(shí)現(xiàn)的是,當(dāng)我們給出一個(gè)隨機(jī)日期作為輸入時(shí),它應(yīng)該將它與最多一年的所有產(chǎn)品的所有銷(xiāo)售日期進(jìn)行比較,并返回給我們一年之間的所有日期的計(jì)數(shù)。例如,如果我們?cè)跀?shù)據(jù)庫(kù)中有5 條記錄,即 { “Sun Feb 25 2015”,“Fri Mar 25 2015”,“Sat Dec 25 2015”,“Mon Feb 25 2016” } 我給“Sun Feb 25, 2015”2015 年 2 月 - 2016 年 2 月.... 它應(yīng)該比較字符串格式的日期,因?yàn)槲乙浴叭赵氯漳辍备袷酱鎯?chǔ)日期......
查看完整描述

2 回答

?
蕭十郎

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

您可以進(jìn)行聚合,首先使用 將日期字符串轉(zhuǎn)換為日期$toDate,并使用 跟蹤年份$year。然后你可以$match在給定的日期范圍內(nèi)的所有文件,最后$group是年份和$count:


YourModel.aggregate([

    { "$addFields": {

       "year":{ "$year": {

            "$toDate": "$date"

        }

    } }},

    {

        $match: {

            // define your range of years here, it would be 2015 - 2016 in your case

            year: {$gte: 2016, $lte: 2020}

        }

    },

    {

        $group: {

            _id: {year: "$year"}

        }

    },

     {

      $count: "totalCountPerYearRange"

    }

]);


查看完整回答
反對(duì) 回復(fù) 2023-03-10
?
慕的地8271018

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

只要日期字符串在數(shù)組中 - 使用 [] NOT {}(它定義了一個(gè)需要屬性:值對(duì)的對(duì)象),那么您就可以將字符串轉(zhuǎn)換為日期并進(jìn)行簡(jiǎn)單的比較。以下將返回一個(gè)數(shù)組,您可以在其中簡(jiǎn)單地獲取數(shù)組的長(zhǎng)度以進(jìn)行計(jì)數(shù)。


let myDates = [

    "Thu Jan 07 2016",

    "Tue Mar 01 2016",

    "Wed May 25 2016",

    "Sat Jun 25 2016",

    "Sun Aug 14 2016",

    "Fri Nov 18 2016",

    "Fri Jan 06 2017",

    "Sun Apr 16 2017",

    "Sun May 21 2017",

    "Sun Jul 30 2017",

    "Fri Sep 22 2017",

    "Sun Nov 12 2017",

    "Sun Dec 24 2017"

]


let firstDate = new Date("Wed May 25 2016");

let lastDate = new Date("Thu May 25 2017");


let matches = myDates.filter(d => {if (new Date(d) >= firstDate && new Date(d) <= lastDate) return d});

console.log(matches);

console.log(matches.length);


查看完整回答
反對(duì) 回復(fù) 2023-03-10
  • 2 回答
  • 0 關(guān)注
  • 166 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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