মঙ্গোডিবি সমস্ত সংগ্রহ থেকে সমস্ত সামগ্রী দেখায়


161

মঙ্গোডিবিতে সমস্ত সংগ্রহ এবং এর সামগ্রীগুলি প্রদর্শন করা কি সম্ভব?

একের পর এক দেখানোর উপায় কি?

উত্তর:


261

আপনি একবার টার্মিনাল / কমান্ড লাইনে পৌঁছে গেলে, আপনি নিম্নলিখিতভাবে ব্যবহার করতে চান এমন ডাটাবেস / সংগ্রহ অ্যাক্সেস করুন:

show dbs
use <db name>
show collections

আপনার সংগ্রহটি চয়ন করুন এবং সেই সংগ্রহের সমস্ত সামগ্রী দেখতে নিম্নলিখিত টাইপ করুন:

db.collectionName.find()

মঙ্গোডিবির দ্রুত রেফারেন্স গাইডে এখানে আরও তথ্য ।


দয়া করে এটিকে সঠিক উত্তর হিসাবে বর্ণনা করুন। আপনি কেবল সমস্ত লিখনের কোড সংগ্রহ করে সমস্ত সংগ্রহ থেকে সমস্ত বিষয়বস্তু দেখতে পারবেন,
— ক্লায়েন্টের

18
আপনার কাছে উপস্থাপিত সংগ্রহটি যদি আপনার দৃষ্টিভঙ্গিভাবে পরিষ্কার করার প্রয়োজন হয় তবে আমিও প্রস্তাব দিই: db.collectionName.find().pretty()
— স্টিভেন ভেন্টিমেগলিয়া

2
মনে রাখবেন সংগ্রহের নামে আপনার নির্দিষ্ট অক্ষর (হাইফেনের মতো) থাকলে এটি কাজ করে না। db["collection-name"].find()
— সেক্ষেত্রে

126

পদক্ষেপ 1: আপনার সমস্ত ডাটাবেস দেখুন:

show dbs

পদক্ষেপ 2: ডাটাবেস নির্বাচন করুন

use your_database_name

পদক্ষেপ 3: সংগ্রহগুলি দেখান

show collections

এটি আপনার নির্বাচিত ডাটাবেসে সমস্ত সংকলন তালিকাভুক্ত করবে।

পদক্ষেপ 4: সমস্ত ডেটা দেখুন

db.collection_name.find() 

অথবা

db.collection_name.find().pretty()

3
আমি আমার ডিবি নামের সাথে ডিবি নামটি প্রতিস্থাপন করেছি, যা আমাকে ত্রুটি করে চলেছে। সুতরাং আমার মতো বোকা জিনিস করবেন না: ডি, db.<collection_name>.find();
— লেগে থাকুন

33
var collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++){    
   print('Collection: ' + collections[i]); // print the name of each collection
   db.getCollection(collections[i]).find().forEach(printjson); //and then print the json of each of its elements
}

আমি মনে করি এই স্ক্রিপ্টটি আপনি যা চান তা পেতে পারে। এটি প্রতিটি সংগ্রহের নাম মুদ্রণ করে এবং তারপরে জসনতে এর উপাদানগুলি মুদ্রণ করে।


19

পদক্ষেপ 1: মঙ্গোডিবি শেলটিতে প্রবেশ করুন।

মোঙ্গো

পদক্ষেপ 2: সমস্ত ডাটাবেস প্রদর্শনের জন্য।

শো ডিবিএস;

পদক্ষেপ 3: একটি নির্বাচিত ডাটাবেসের জন্য:

'ডাটাবেস_নাম' ব্যবহার করুন

পদক্ষেপ 4: আপনার ডাটাবেসের পরিসংখ্যানগুলির জন্য।

db.stats ()

পদক্ষেপ 5: সমস্ত সংগ্রহের তালিকা (টেবিল)।

সংগ্রহগুলি দেখান

পদক্ষেপ:: নির্দিষ্ট সংগ্রহ থেকে ডেটা মুদ্রণ করুন।

db.'collection_name'.find ()। চমত্কার ()


9

কোয়েরিগুলির নীচে লেখার আগে প্রথমে আপনার সেন্টিমিডি বা পাওয়ারশেল এ প্রবেশ করুন

TYPE:
mongo             //To get into MongoDB shell
use <Your_dbName>      //For Creating or making use of existing db

সমস্ত সংগ্রহের নাম তালিকাভুক্ত করতে নীচের বিকল্পগুলি থেকে যে কোনও একটি ব্যবহার করুন: -

show collections  //output every collection
  OR
show tables
  OR
db.getCollectionNames() //shows all collections as a list

ব্রুনো_ফেরিরার দ্বারা পোস্ট করা নীচের তালিকাভুক্ত কোডের নীচে সমস্ত সংগ্রহের সামগ্রী বা ডেটা ব্যবহার দেখাতে।

var collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++) {    
   print('Collection: ' + collections[i]); // print the name of each collection
   db.getCollection(collections[i]).find().forEach(printjson); //and then print     the json of each of its elements
}

সেরা সমাধান, আমার সংগ্রহের সামগ্রীগুলি দেখায়!
— jjwalces


4

এটি করবে:

db.getCollectionNames().forEach(c => {
    db[c].find().forEach(d => {
        print(c); 
        printjson(d)
    })
})

2

আপনি যদি ব্যবহার করেন তবে আমি অন্য পদ্ধতির পছন্দ করি mongo শেল :

প্রথমে অন্য জবাব হিসাবে: use my_database_nameতারপর:

db.getCollectionNames().map( (name) => ({[name]: db[name].find().toArray().length}) )

এই ক্যোয়ারী আপনাকে এরকম কিছু দেখাবে:

[
        {
                "agreements" : 60
        },
        {
                "libraries" : 45
        },
        {
                "templates" : 9
        },
        {
                "users" : 18
        }
]

আপনি এর সাথে অনুরূপ পদ্ধতির ব্যবহার করতে db.getCollectionInfos()পারেন আপনার কাছে এত বেশি ডেটা থাকলে বেশ কার্যকর।


count()পরিবর্তে ব্যবহার করুন find():db.getCollectionNames().map( (name) => ({[name]: db[name].count()}) )
— হলমান 76
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.