MongoDB Common Operations Commands
If you want to create a "myTest" database, run the use myTest command first, then do something (such as: db.createcollection (' user ')) so you can create a
Build a database called "MyTest".
First, the database commonly used commands
1. Help View command Prompt
[SQL] View plain copy
Help
Db.help ();
Db.yourColl.help ();
Db.youColl.find (). Help ();
Rs.help ();
2. Switch/CREATE Database
[SQL] View plain copy
Use Yourdb;
The current database is created automatically when a collection (table) is created
3. Query all databases
[SQL] View plain copy
Show DBS;
4. Delete the currently used database
[SQL] View plain copy
Db.dropdatabase ();
5. Cloning a database from a specified host
[SQL] View plain copy
Db.clonedatabase ("127.0.0.1");
Clones data from a database on a specified machine to the current database
6. Copy the specified database data from the specified machine to a database
[SQL] View plain copy
Db.copydatabase ("MyDB", "temp", "127.0.0.1");
Copy the MyDB data from the native to the temp database
7. Repairing the current database
[SQL] View plain copy
Db.repairdatabase ();
8. View the database currently in use
[SQL] View plain copy
Db.getname ();
db The DB and GetName methods are the same effect and can query the currently used database
9. Display the current DB status
[SQL] View plain copy
Db.stats ();
10. Current DB version
[SQL] View plain copy
Db.version ();
11. View the current DB link machine address
[SQL] View plain copy
Db.getmongo ();
Second, collection aggregation set
1. Create a Clustered collection (table)
[SQL] View plain copy
Db.createcollection ("Collname", {size:20, Capped:5, max:100});
Successful creation will display {"OK": 1}
Determine whether the set is a fixed capacity db.collName.isCapped ();
2. Get a clustered collection with the specified name (table)
[SQL] View plain copy
Db.getcollection ("account");
3. Get all the aggregation sets of the current DB
[SQL] View plain copy
Db.getcollectionnames ();
4. Displays the status of all clustered indexes in the current DB
[SQL] View plain copy
Db.printcollectionstats ();
Third, user-related
1. Add a user
[SQL] View plain copy
Db.adduser ("name");
Db.adduser ("UserName", "pwd123", true);
Add user, set password, read-only
2, database authentication, security mode
[SQL] View plain copy
Db.auth ("UserName", "123123");
3. Show all current users
[SQL] View plain copy
Show Users;
4. Delete users
[SQL] View plain copy
Db.removeuser ("UserName");
Iv. Aggregation Collection Query
1. Check all records
[SQL] View plain copy
Db.userInfo.find ();
Equivalent: select* from UserInfo;
The default is 20 records per page, and you can query the next page of data with the IT iteration command when the display is not displayed. Note: Type the IT command cannot take ";"
However, you can set the size of the data displayed on each page, using dbquery.shellbatchsize= 50, which shows 50 records per page.
2. Duplicate data for a column in the current clustered collection after the query is removed
[SQL] View plain copy
Db.userInfo.distinct ("name");
Will filter out the same data in name
Equivalent: Select Distict name from UserInfo;
3. Check the record of age = 22
[SQL] View plain copy
Db.userInfo.find ({"Age": 22});
Equivalent to: SELECT * from userInfo where age = 22;
4. Check the records of age > 22
[SQL] View plain copy
Db.userInfo.find ({age: {$gt: 22}});
Equivalent to: SELECT * from UserInfo where >22;
5. Check the records of age < 22
[SQL] View plain copy
Db.userInfo.find ({age: {$lt: 22}});
Equivalent to: SELECT * from UserInfo where <22;
6. Check the records of age >= 25
[SQL] View plain copy
Db.userInfo.find ({age: {$gte: 25}});
Equivalent to: SELECT * from UserInfo where age >= 25;
7. Check the records of age <= 25
[SQL] View plain copy
Db.userInfo.find ({age: {$lte: 25}});
8. Query age >= 23 and age <= 26
[SQL] View plain copy
Db.userInfo.find ({age: {$gte: $lte: 26}});
9. Query the data containing MONGO in name
[SQL] View plain copy
Db.userInfo.find ({name:/mongo/});
Equal to percent
SELECT * from UserInfo where name is like '%mongo% ';
10, query the name in the beginning of MONGO
[SQL] View plain copy
Db.userInfo.find ({name:/^mongo/});
Equivalent to: SELECT * from UserInfo where name like ' mongo% ';
11. Query the specified column name, age data
[SQL] View plain copy
Db.userInfo.find ({}, {name:1, age:1});
Equivalent to: Select Name, age from UserInfo;
Of course name can also be used with true or false, as in the case of Ture River Name:1 effect, if False is to exclude name, display column information other than name.
12. Query the specified column name, age data, age > 25
[SQL] View plain copy
Db.userInfo.find ({age: {$gt: +}}, {name:1, age:1});
Equivalent to: Select Name, age from UserInfo where age >25;
13. Sort by age
[SQL] View plain copy
Ascending: Db.userInfo.find (). Sort ({age:1});
Descending: Db.userInfo.find (). Sort ({Age:-1});
14. Query name = Zhangsan, age = 22 data
[SQL] View plain copy
Db.userInfo.find ({name: ' Zhangsan ', age:22});
Equivalent to: SELECT * from userInfo where name = ' Zhangsan ' and "age = ' 22 ';
15, query the first 5 data
[SQL] View plain copy
Db.userInfo.find (). Limit (5);
Equivalent: selecttop 5 * from UserInfo;
16, query 10 after the data
[SQL] View plain copy
Db.userInfo.find (). Skip (10);
Equivalent to: SELECT * from UserInfo where ID not in (
Selecttop * from UserInfo
);
17, query the data between 5-10
[SQL] View plain copy
Db.userInfo.find (). Limit (Ten). Skip (5);
Can be used for pagination, limit is Pagesize,skip is the first few pages *pagesize
18, OR and query
[SQL] View plain copy
Db.userInfo.find ({$or: [{age:22}, {age:25}]});
Equivalent to: SELECT * from UserInfo where is age = 25
19. Query the first piece of data
[SQL] View plain copy
Db.userInfo.findOne ();
Equivalent: Selecttop 1 * from UserInfo;
Db.userInfo.find (). limit (1);
20. Query the number of record bars for a result set
[SQL] View plain copy
Db.userInfo.find ({age: {$gte: +}}). Count ();
Equivalent to: SELECT COUNT (*) from UserInfo where age >= 20;
21. Sort by a column
[SQL] View plain copy
Db.userInfo.find ({sex: {$exists: true}}). Count ();
Equivalent to: SELECT COUNT (Sex) from userInfo;
Five, index
1. Create an index
[SQL] View plain copy
Db.userInfo.ensureIndex ({name:1});
Db.userInfo.ensureIndex ({name:1, TS:-1});
2. Querying all indexes of the current aggregation collection
[SQL] View plain copy
Db.userInfo.getIndexes ();
3. View Total index record size
[SQL] View plain copy
Db.userInfo.totalIndexSize ();
4. Read all index information for the current collection
[SQL] View plain copy
Db.users.reIndex ();
5. Delete the specified index
Db.users.dropIndex ("Name_1");
6. Delete all index indexes
[SQL] View plain copy
Db.users.dropIndexes ();
Vi. Modify, add, and delete collection data
1. Add
[SQL] View plain copy
Db.users.save ({name: ' Zhangsan ', age:25, sex:true});
Data column of the added data, not fixed, according to the data added
2. Modification
[SQL] View plain copy
Db.users.update ({age:25}, {$set: {name: ' ChangeName '}}, False, True);
Equivalent to: Update users set name = ' ChangeName ' where age = 25;
Db.users.update ({name: ' Lisi '}, {$inc: {age:50}}, False, True);
Equivalent to: Update users set age = Age + where name = ' Lisi ';
Db.users.update ({name: ' Lisi '}, {$inc: {age:50}, $set: {name: ' HoHo '}}, False, True);
Equivalent to: Update users set age = Age +, name = ' HoHo ' WHERE name = ' Lisi ';
3. Delete
[SQL] View plain copy
Db.users.remove ({age:132});
4, Query modification Delete
[SQL] View plain copy
Db.users.findAndModify ({
Query: {age: {$gte: 25}},
Sort: {Age:-1},
Update: {$set: {name: ' A2 '}, $inc: {age:2}},
Remove:true
});
Db.runcommand ({findandmodify: "Users",
Query: {age: {$gte: 25}},
Sort: {Age:-1},
Update: {$set: {name: ' A2 '}, $inc: {age:2}},
Remove:true
});
Update or remove one of them is a required parameter; Additional parameters are optional.
Parameter details default value
Query filter Condition {}
Sort if multiple documents conform to the query filter criteria, the object that is ranked first is selected in the arrangement specified by the parameter, and the object is manipulated {}
Remove if True, the selected object will be deleted before returning N/a
Update a Modifier object N/A
If new is true, the modified object is returned instead of the original object. In the delete operation, the parameter is ignored. False
Fields see retrieving a subset of fields (1.5.0+)
All fields
Upsert Create a new object if the query result is empty. Example (1.5.4+) False
Seven, statement block operation
1. Simple Hello World
[SQL] View plain copy
Print ("Hello world!");
This notation calls the print function, and writes "Hello world!" directly The effect is the same;
2. Convert an object to JSON
[SQL] View plain copy
Tojson (New Object ());
Tojson (New Object (' a '));
3. Loop Add data
[SQL] View plain copy
> for (var i = 0; i < i++) {
... db.users.save ({name: "u_" + I, age:22 + i, sex:i% 2});
... };
This adds 30 data to the loop, and you can also omit the notation
Copy the code code as follows:
> for (var i = 0; i < i++) Db.users.save ({name: "u_" + I, age:22 + i, sex:i% 2});
is also possible, when you use the Db.users.find () query, display multiple data and can not be displayed on a page, the use of it to view the next page of information;
4. Find Cursor Query
[SQL] View plain copy
>var cursor = Db.users.find ();
> while (Cursor.hasnext ()) {
Printjson (Cursor.next ());
}
This allows you to query all the users information, as well as to write
[SQL] View plain copy
var cursor = Db.users.find ();
while (Cursor.hasnext ()) {Printjson (cursor.next);}
You can also omit the {} number
5. Foreach Iteration Loops
[SQL] View plain copy
Db.users.find (). ForEach (Printjson);
A function must be passed in foreach to handle the data information for each iteration.
6. Treat the Find cursor as an array
[SQL] View plain copy
var cursor = Db.users.find ();
CURSOR[4];
Get the data for subscript index 4
Since it can be treated as an array, its length can be obtained: Cursor.length (); or cursor.count ();
So we can also display the data in a loop
[SQL] View plain copy
for (var i = 0, Len = c.length (); i < Len; i++) Printjson (C[i]);
7. Convert the Find cursor to an array
[SQL] View plain copy
> var arr = db.users.find (). ToArray ();
> Printjson (arr[2]);
Convert it to an array using the ToArray method.
8. Customize our own query results
Only age <= 28 is displayed and only the Age column data is displayed
[SQL] View plain copy
Db.users.find ({age: {$lte: +}}, {age:1}). ForEach (Printjson);
Db.users.find ({age: {$lte: +}}, {age:true}). ForEach (Printjson);
Exclude The Age column
[SQL] View plain copy
Db.users.find ({age: {$lte: +}}, {Age:false}). ForEach (Printjson);
9. The Foreach transfer function displays information
[SQL] View plain copy
Db.things.find ({x:4}). ForEach (function (x) {print (Tojson (x));});
Viii. Other
1, the error message before the query
[SQL] View plain copy
Db.getpreverror ();
2. Clear the Error Record
[SQL] View plain copy
Db.reseterror ();
View Aggregate Collection basic information
1, check the help Db.yourColl.help ();
2, query the current collection of data bar number Db.yourColl.count ();
3, view data space size db.userInfo.dataSize ();
4. Get the DB Db.userInfo.getDB () where the current aggregation set resides;
5, get the current gathering state db.userInfo.stats ();
6, get the aggregate aggregate size db.userInfo.totalSize ();
7, aggregate storage space size db.userInfo.storageSize ();
8. Shard Version Information Db.userInfo.getShardVersion ()
9, Aggregation set rename Db.userInfo.renameCollection ("Users"); Rename UserInfo to users
10. Delete the current aggregation set Db.userInfo.drop ();
[SQL] View plain copy
Show DBS: Display Database list
Show Collections: Displays a collection in the current database (similar to a table in a relational database)
Show Users: Show user
Use <db name>: Switch the current database, which is the same as the meaning in Ms-sql
Db.help (): Show database Operations Command with a lot of commands
Db.foo.help (): Displays the set Operation command, as well as a lot of commands, Foo refers to the current database, a collection called Foo, not the real meaning of the command
Db.foo.find (): Data lookup for the Foo collection in the current database (all data is listed because there are no conditions)
Db.foo.find ({a:1}): Looks for the Foo collection in the current database, provided the data has a property called a, and A has a value of 1
MongoDB Common Operations commands