Как получить данные только в том случае, если дата в совокупном мангусте превышает 45 дней? - PullRequest
0 голосов
/ 07 ноября 2019

Я хочу получить данные на основе даты, которая не превышает 45 дней. Я использую агрегацию, и у меня есть столбец postdate, поэтому я хочу получать данные только в том случае, если postdate находится в пределах 45 дней.

ниже кода postdate это имя столбца:

const baseStages = [
  {
    $lookup: {
      from: CrewbiesJobs.collection.name,
      localField: "jobId",
      foreignField: "jobId",
      as: "job_docs"
    }
  },
  {
    $unwind: "$job_docs"
  },
  {
    $project: {
      _id: 1,
      jobTitle: 1,
      jobId: 1,
      // jobDescription: 1,
      postedDate: 1,
      filter1: 1,
      filter2: 1,
      filter3: 1,
      createdAt: 1,
      updatedAt: 1
    }
  },
  { $match: filter },
  { $sort: { postedDate: -1 } }
];

const jobsStages = [
  ...baseStages,
  { $skip: query.skip },
  { $limit: query.limit }
];

let jobsAggregate = await Jobs.aggregate(jobsStages);

А вот мойсхема мангуста:

let jobsSchema = new mongoose.Schema(
  {
    jobTitle: String,
    jobId: {
      type: Schema.Types.String,
      unique: true,
      dropDups: true,
      ref: "Jobs"
    },
    jobDescription: String,
    postedDate: String,
    filter1: [{ label: String, value: String }],
    filter2: [{ label: String, value: String }],
    filter3: [{ label: String, value: String }]
  },
  { timestamps: true }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...