logologo
शुरू करें
मार्गदर्शिका
विकास
प्लगइन
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
शुरू करें
मार्गदर्शिका
विकास
प्लगइन
API
logologo
API Overview

@nocobase/auth

AuthManager
Auth
BaseAuth

@nocobase/cache

कैशमैनेजर
कैश

@nocobase/cli

NocoBase CLI
वैश्विक पर्यावरण चर

@nocobase/client

एप्लिकेशन
प्लगइन

@nocobase/database

संग्रह
फ़ील्ड

interfaces

BaseInterface
फ़िल्टर ऑपरेटर

RelationRepository

BelongsToManyRepository
belongs-to-repository
HasManyRepository
HasOneRepository
रिपॉजिटरी

shared

create-options
destroy-options
find-one
NocoBase में आपका स्वागत है
transaction
update-options

@nocobase/data-source-manager

DataSourceManager
डेटा स्रोत (एब्स्ट्रैक्ट)
ICollectionManager
ICollection
IField
IModel
IRepository

@nocobase/flow-engine

डेटा स्रोत प्रबंधक
वर्कफ़्लो संदर्भ
FlowEngine
FlowModel
वर्कफ़्लो संसाधन

@nocobase/logger

लॉगर

@nocobase/server

AppCommand
एप्लिकेशन
ऑडिटमैनेजर
संदर्भ
माइग्रेशन
प्लगइन

@nocobase/sdk

Auth
स्टोरेज

@nocobase/telemetry

मेट्रिक
Telemetry
ट्रेस
Previous PageBaseInterface
Next PageRelationRepository
TIP

यह दस्तावेज़ AI द्वारा अनुवादित किया गया है। किसी भी अशुद्धि के लिए, कृपया अंग्रेजी संस्करण देखें

#फ़िल्टर ऑपरेटर

Repository के find, findOne, findAndCount, count जैसे API के filter पैरामीटर में इनका उपयोग किया जाता है:

const repository = db.getRepository('books');

repository.find({
  filter: {
    title: {
      $eq: '春秋',
    },
  },
});

JSON सीरियलाइज़ेशन (JSON serialization) का समर्थन करने के लिए, NocoBase में क्वेरी ऑपरेटर को $ से शुरू होने वाली स्ट्रिंग के रूप में पहचाना जाता है।

इसके अतिरिक्त, NocoBase ऑपरेटरों को विस्तारित करने के लिए एक API भी प्रदान करता है। अधिक जानकारी के लिए db.registerOperators() देखें।

#सामान्य ऑपरेटर

#$eq

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान के बराबर है या नहीं। यह SQL के = के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $eq: '春秋',
    },
  },
});

यह title: '春秋' के समान है।

#$ne

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान के बराबर नहीं है या नहीं। यह SQL के != के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $ne: '春秋',
    },
  },
});

#$is

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान है या नहीं। यह SQL के IS के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $is: null,
    },
  },
});

#$not

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान नहीं है या नहीं। यह SQL के IS NOT के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $not: null,
    },
  },
});

#$col

यह जांचता है कि फ़ील्ड का मान किसी अन्य फ़ील्ड के मान के बराबर है या नहीं। यह SQL के = के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $col: 'name',
    },
  },
});

#$in

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट ऐरे (array) में है या नहीं। यह SQL के IN के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $in: ['春秋', '战国'],
    },
  },
});

#$notIn

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट ऐरे (array) में नहीं है या नहीं। यह SQL के NOT IN के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $notIn: ['春秋', '战国'],
    },
  },
});

#$empty

यह जांचता है कि कोई सामान्य फ़ील्ड खाली है या नहीं। यदि यह एक स्ट्रिंग फ़ील्ड है, तो यह जांचता है कि स्ट्रिंग खाली है या नहीं। यदि यह एक ऐरे (array) फ़ील्ड है, तो यह जांचता है कि ऐरे खाली है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $empty: true,
    },
  },
});

#$notEmpty

यह जांचता है कि कोई सामान्य फ़ील्ड खाली नहीं है या नहीं। यदि यह एक स्ट्रिंग फ़ील्ड है, तो यह जांचता है कि स्ट्रिंग खाली नहीं है या नहीं। यदि यह एक ऐरे (array) फ़ील्ड है, तो यह जांचता है कि ऐरे खाली नहीं है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $notEmpty: true,
    },
  },
});

#लॉजिकल ऑपरेटर

#$and

लॉजिकल AND। यह SQL के AND के बराबर है।

उदाहरण

repository.find({
  filter: {
    $and: [{ title: '诗经' }, { isbn: '1234567890' }],
  },
});

#$or

लॉजिकल OR। यह SQL के OR के बराबर है।

उदाहरण

repository.find({
  filter: {
    $or: [{ title: '诗经' }, { publishedAt: { $lt: '0000-00-00T00:00:00Z' } }],
  },
});

#बूलियन प्रकार के फ़ील्ड ऑपरेटर

बूलियन प्रकार के फ़ील्ड (type: 'boolean') के लिए उपयोग किया जाता है।

#$isFalsy

यह जांचता है कि बूलियन फ़ील्ड का मान फ़ॉल्सी (falsy) है या नहीं। false, 0, और NULL के फ़ील्ड मानों को $isFalsy: true माना जाता है।

उदाहरण

repository.find({
  filter: {
    isPublished: {
      $isFalsy: true,
    },
  },
});

#$isTruly

यह जांचता है कि बूलियन फ़ील्ड का मान ट्रुथी (truthy) है या नहीं। true और 1 के फ़ील्ड मानों को $isTruly: true माना जाता है।

उदाहरण

repository.find({
  filter: {
    isPublished: {
      $isTruly: true,
    },
  },
});

#संख्यात्मक प्रकार के फ़ील्ड ऑपरेटर

संख्यात्मक प्रकार के फ़ील्ड के लिए उपयोग किया जाता है, जिनमें शामिल हैं:

  • type: 'integer'
  • type: 'float'
  • type: 'double'
  • type: 'real'
  • type: 'decimal'

#$gt

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान से अधिक है या नहीं। यह SQL के > के बराबर है।

उदाहरण

repository.find({
  filter: {
    price: {
      $gt: 100,
    },
  },
});

#$gte

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान से अधिक या उसके बराबर है या नहीं। यह SQL के >= के बराबर है।

उदाहरण

repository.find({
  filter: {
    price: {
      $gte: 100,
    },
  },
});

#$lt

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान से कम है या नहीं। यह SQL के < के बराबर है।

उदाहरण

repository.find({
  filter: {
    price: {
      $lt: 100,
    },
  },
});

#$lte

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट मान से कम या उसके बराबर है या नहीं। यह SQL के <= के बराबर है।

उदाहरण

repository.find({
  filter: {
    price: {
      $lte: 100,
    },
  },
});

#$between

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट दो मानों के बीच है या नहीं। यह SQL के BETWEEN के बराबर है।

उदाहरण

repository.find({
  filter: {
    price: {
      $between: [100, 200],
    },
  },
});

#$notBetween

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट दो मानों के बीच नहीं है या नहीं। यह SQL के NOT BETWEEN के बराबर है।

उदाहरण

repository.find({
  filter: {
    price: {
      $notBetween: [100, 200],
    },
  },
});

#स्ट्रिंग प्रकार के फ़ील्ड ऑपरेटर

स्ट्रिंग प्रकार के फ़ील्ड (string) के लिए उपयोग किया जाता है।

#$includes

यह जांचता है कि स्ट्रिंग फ़ील्ड में निर्दिष्ट सबस्ट्रिंग (substring) शामिल है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $includes: '三字经',
    },
  },
});

#$notIncludes

यह जांचता है कि स्ट्रिंग फ़ील्ड में निर्दिष्ट सबस्ट्रिंग शामिल नहीं है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $notIncludes: '三字经',
    },
  },
});

#$startsWith

यह जांचता है कि स्ट्रिंग फ़ील्ड निर्दिष्ट सबस्ट्रिंग से शुरू होता है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $startsWith: '三字经',
    },
  },
});

#$notStatsWith

यह जांचता है कि स्ट्रिंग फ़ील्ड निर्दिष्ट सबस्ट्रिंग से शुरू नहीं होता है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $notStatsWith: '三字经',
    },
  },
});

#$endsWith

यह जांचता है कि स्ट्रिंग फ़ील्ड निर्दिष्ट सबस्ट्रिंग के साथ समाप्त होता है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $endsWith: '三字经',
    },
  },
});

#$notEndsWith

यह जांचता है कि स्ट्रिंग फ़ील्ड निर्दिष्ट सबस्ट्रिंग के साथ समाप्त नहीं होता है या नहीं।

उदाहरण

repository.find({
  filter: {
    title: {
      $notEndsWith: '三字经',
    },
  },
});

#$like

यह जांचता है कि फ़ील्ड के मान में निर्दिष्ट स्ट्रिंग शामिल है या नहीं। यह SQL के LIKE के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $like: '计算机',
    },
  },
});

#$notLike

यह जांचता है कि फ़ील्ड के मान में निर्दिष्ट स्ट्रिंग शामिल नहीं है या नहीं। यह SQL के NOT LIKE के बराबर है।

उदाहरण

repository.find({
  filter: {
    title: {
      $notLike: '计算机',
    },
  },
});

#$iLike

यह जांचता है कि फ़ील्ड के मान में निर्दिष्ट स्ट्रिंग शामिल है या नहीं, केस-संवेदनशीलता (case-sensitivity) को अनदेखा करते हुए। यह SQL के ILIKE के बराबर है (केवल PG के लिए लागू)।

उदाहरण

repository.find({
  filter: {
    title: {
      $iLike: 'Computer',
    },
  },
});

#$notILike

यह जांचता है कि फ़ील्ड के मान में निर्दिष्ट स्ट्रिंग शामिल नहीं है या नहीं, केस-संवेदनशीलता को अनदेखा करते हुए। यह SQL के NOT ILIKE के बराबर है (केवल PG के लिए लागू)।

उदाहरण

repository.find({
  filter: {
    title: {
      $notILike: 'Computer',
    },
  },
});

#$regexp

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट रेगुलर एक्सप्रेशन (regular expression) से मेल खाता है या नहीं। यह SQL के REGEXP के बराबर है (केवल PG के लिए लागू)।

उदाहरण

repository.find({
  filter: {
    title: {
      $regexp: '^计算机',
    },
  },
});

#$notRegexp

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट रेगुलर एक्सप्रेशन से मेल नहीं खाता है या नहीं। यह SQL के NOT REGEXP के बराबर है (केवल PG के लिए लागू)।

उदाहरण

repository.find({
  filter: {
    title: {
      $notRegexp: '^计算机',
    },
  },
});

#$iRegexp

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट रेगुलर एक्सप्रेशन से मेल खाता है या नहीं, केस-संवेदनशीलता को अनदेखा करते हुए। यह SQL के ~* के बराबर है (केवल PG के लिए लागू)।

उदाहरण

repository.find({
  filter: {
    title: {
      $iRegexp: '^COMPUTER',
    },
  },
});

#$notIRegexp

यह जांचता है कि फ़ील्ड का मान निर्दिष्ट रेगुलर एक्सप्रेशन से मेल नहीं खाता है या नहीं, केस-संवेदनशीलता को अनदेखा करते हुए। यह SQL के !~* के बराबर है (केवल PG के लिए लागू)।

उदाहरण

repository.find({
  filter: {
    title: {
      $notIRegexp: '^COMPUTER',
    },
  },
});

#दिनांक प्रकार के फ़ील्ड ऑपरेटर

दिनांक प्रकार के फ़ील्ड (type: 'date') के लिए उपयोग किया जाता है।

#$dateOn

यह जांचता है कि दिनांक फ़ील्ड किसी विशेष दिन पर है या नहीं।

उदाहरण

repository.find({
  filter: {
    createdAt: {
      $dateOn: '2021-01-01',
    },
  },
});

#$dateNotOn

यह जांचता है कि दिनांक फ़ील्ड किसी विशेष दिन पर नहीं है या नहीं।

उदाहरण

repository.find({
  filter: {
    createdAt: {
      $dateNotOn: '2021-01-01',
    },
  },
});

#$dateBefore

यह जांचता है कि दिनांक फ़ील्ड किसी विशेष मान से पहले है या नहीं। यह दिए गए दिनांक मान से कम होने के बराबर है।

उदाहरण

repository.find({
  filter: {
    createdAt: {
      $dateBefore: '2021-01-01T00:00:00.000Z',
    },
  },
});

#$dateNotBefore

यह जांचता है कि दिनांक फ़ील्ड किसी विशेष मान से पहले नहीं है या नहीं। यह दिए गए दिनांक मान से अधिक या उसके बराबर होने के बराबर है।

उदाहरण

repository.find({
  filter: {
    createdAt: {
      $dateNotBefore: '2021-01-01T00:00:00.000Z',
    },
  },
});

#$dateAfter

यह जांचता है कि दिनांक फ़ील्ड किसी विशेष मान के बाद है या नहीं। यह दिए गए दिनांक मान से अधिक होने के बराबर है।

उदाहरण

repository.find({
  filter: {
    createdAt: {
      $dateAfter: '2021-01-01T00:00:00.000Z',
    },
  },
});

#$dateNotAfter

यह जांचता है कि दिनांक फ़ील्ड किसी विशेष मान के बाद नहीं है या नहीं। यह दिए गए दिनांक मान से कम या उसके बराबर होने के बराबर है।

उदाहरण

repository.find({
  filter: {
    createdAt: {
      $dateNotAfter: '2021-01-01T00:00:00.000Z',
    },
  },
});

#ऐरे प्रकार के फ़ील्ड ऑपरेटर

ऐरे प्रकार के फ़ील्ड (type: 'array') के लिए उपयोग किया जाता है।

#$match

यह जांचता है कि ऐरे फ़ील्ड का मान निर्दिष्ट ऐरे में दिए गए मानों से मेल खाता है या नहीं।

उदाहरण

repository.find({
  filter: {
    tags: {
      $match: ['文学', '历史'],
    },
  },
});

#$notMatch

यह जांचता है कि ऐरे फ़ील्ड का मान निर्दिष्ट ऐरे में दिए गए मानों से मेल नहीं खाता है या नहीं।

उदाहरण

repository.find({
  filter: {
    tags: {
      $notMatch: ['文学', '历史'],
    },
  },
});

#$anyOf

यह जांचता है कि ऐरे फ़ील्ड के मान में निर्दिष्ट ऐरे में से कोई भी मान शामिल है या नहीं।

उदाहरण

repository.find({
  filter: {
    tags: {
      $anyOf: ['文学', '历史'],
    },
  },
});

#$noneOf

यह जांचता है कि ऐरे फ़ील्ड के मान में निर्दिष्ट ऐरे में से कोई भी मान शामिल नहीं है या नहीं।

उदाहरण

repository.find({
  filter: {
    tags: {
      $noneOf: ['文学', '历史'],
    },
  },
});

#$arrayEmpty

यह जांचता है कि ऐरे फ़ील्ड खाली है या नहीं।

उदाहरण

repository.find({
  filter: {
    tags: {
      $arrayEmpty: true,
    },
  },
});

#$arrayNotEmpty

यह जांचता है कि ऐरे फ़ील्ड खाली नहीं है या नहीं।

उदाहरण

repository.find({
  filter: {
    tags: {
      $arrayNotEmpty: true,
    },
  },
});

#संबंध फ़ील्ड प्रकार के ऑपरेटर

यह जांचने के लिए उपयोग किया जाता है कि कोई संबंध मौजूद है या नहीं। फ़ील्ड प्रकारों में शामिल हैं:

  • type: 'hasOne'
  • type: 'hasMany'
  • type: 'belongsTo'
  • type: 'belongsToMany'

#$exists

संबंध डेटा मौजूद है।

उदाहरण

repository.find({
  filter: {
    author: {
      $exists: true,
    },
  },
});

#$notExists

संबंध डेटा मौजूद नहीं है।

उदाहरण

repository.find({
  filter: {
    author: {
      $notExists: true,
    },
  },
});