1. 程式人生 > >Flask第四天-MongoDB介紹、增刪改查、資料型別、比較符、查詢關鍵字、修改器、排序選取跳過

Flask第四天-MongoDB介紹、增刪改查、資料型別、比較符、查詢關鍵字、修改器、排序選取跳過

db                檢視當前資料庫
show dbs        查詢所有資料庫(在物理磁碟上的)
use SS2DAY04    建立資料庫(此時非儲存在物理磁碟,只存在記憶體上)
db.users        切換到指定資料庫
db.users.insert({name:"caiwenji",age:16})    插入新資料,並將資料寫入到物理磁碟上,官方不推薦使用

db.user.insertMany([{"name":"金王八"},{"name","egon"}])    插入多條資料,推薦使用
db.user.insertOne([{"name":"金王八"}    插入一條資料,推薦使用

db.users.find()            查詢多條資料
db.users.findOne({})    查詢一條資料

db.users.update({"name":"caiwenji"},{$set:{"age":18}}) 修改(覆蓋行為)資料,官方不推薦使用
    "_id" : ObjectId("5bda51bec1bae403090977e7")
    db.users.updateOne({},{$set:{"cursors":""}})    更新一條資料
    db.users.updateMany({},{$set:{"cursors":""}})    更新多條資料
    
db.users.remove({"age":21})    刪除資料,官方不推薦使用
db.users.deleteMany({"age":30})    刪除滿足條件的全部資料
db.users.deleteOne({"age":30})    刪除滿足條件的第一條資料    


關係型資料庫      非關係型資料庫
   table            collection        表
   row                Documents        資料條目
   column            Field            欄位

MongDB資料型別:
    Object  ID :Documents 自生成的 _id
    String: 字串,必須是utf-8
    Boolean:布林值,true 或者false (這裡有坑哦~在我們大Python中 True False 首字母大寫)
    Integer:整數 (Int32 Int64 你們就知道有個Int就行了,一般我們用Int32)
    Double:浮點數 (沒有float型別,所有小數都是Double)
    Arrays:陣列或者列表,多個值儲存到一個鍵 (list哦,大Python中的List哦)
    Object:如果你學過Python的話,那麼這個概念特別好理解,就是Python中的字典,這個資料型別就是字典
    Null:空資料型別 , 一個特殊的概念,None Null
    Timestamp:時間戳
    Date:儲存當前日期或時間unix時間格式 (我們一般不用這個Date型別,時間戳可以秒殺一切時間型別)


數學比較符:
    $lt:  <
    $lte: <=
    $gt:  >
    $gte: >=
    $eq:  =
    :  :  = or ==

$:
    儲存滿足條件的資料下標索引位置
    db.users.updateOne({"other.name":"linux","name":"銀網咖"},{$set:{"other.$.score":19}})
    
$ 關鍵字:
    $or    :    db.users.fine({$or:[{age:18},{name:"銀網咖"}]})
    $and or ,    
    $in            
    $all        


$修改器 update:
$set:直接將欄位的值設定為value
$unset:刪除欄位
$inc:原值增加 db.users.updateMany({name:"金王八"},{$inc:{cursors:1}})

$array修改器:
$push : append(item) db.users.updateMany({name:"金王八"},{$push:{hobby:10}})    
$pull : remove(item) db.users.updateMany({name:"金王八"},{$pull:{hobby:10}})
$pop:    pop()          db.users.updateMany({name:"金王八"},{$pop:{hobby:-1}})        1最後一個 -1第一個

MONGDB.student.delete_many({})    清空表格但表格還在    
MONGDB.student.drop()            清空表格以及刪除表格
    
limit:db.users.find({}).limit(2)    顯示條目數量 
skip:db.users.find({}).skip(1)        跳過條目數量

簡單分佈:db.users.find({}).limit(當前頁碼*每頁條目).skip(每頁條目)

sort排序:
sort:db.users.find({}).sort({age:1})    1:ASC -1:DESC    
    
分佈排序多重用法:
db.users.find({}).sort({age:-1}).limit(2).skip(2)