저희 php mongodb도 mysql과 sqlserver가 할 수 있는 거의 모든 기능을 할 수 있습니다. 이 글에서는 자세히 소개하겠습니다.
1. 연산자
동등한 연산자는 모두가 알아야 한다고 생각합니다. ~ 및 보다 큼, 보다 작음, 같지 않음, 크거나 같음, 작거나 같음. 그러나 이러한 연산자는 mongodb에서 직접 사용할 수 없습니다. mongodb의 연산자는 다음과 같이 표현됩니다:
(1) $gt > (보다 큼)
(2) $lt < (보다 작음)
(4) $lt <= (작거나 같음)
(5) $ne != (같지 않음)
(6) $in in (포함)
(7) $ nin not in (포함되지 않음)
(8) $exists exist(필드 존재 여부)
(9) $inc 숫자 필드 필드에 값 추가
(10) $set sql 필드 = 값 집합과 동일
(11) $unset 필드를 삭제하는 것입니다
(12) $push 필드에 값을 추가합니다. 필드가 없으면 새로운 배열 유형이 추가됩니다. in
(13) $pushAll 한 번에 여러 값을 배열 필드에 추가할 수 있다는 점을 제외하면 $push와 동일합니다.
(14) $addToSet 배열에 값을 추가하면 값이 배열에 없으면 추가됩니다.
(15) $pop 마지막 값 삭제: { $pop : { field : 1 } } 첫 번째 값 삭제: { $pop : { field : -1 } } 한 가지 값만 삭제할 수 있습니다. 두 항목을 삭제하려면 1이나 -1만 사용할 수 있고 2나 -2는 사용할 수 없다고 나와 있습니다. Mongodb 1.1 이상 버전만 사용할 수 있습니다.
(16) $pull 배열 필드에서 해당 값과 동일한 값을 삭제합니다.
(17) $pullAll $pull과 동일하며 에서 여러 값을 삭제할 수 있습니다.
(18) $ 연산자는 자신만의 의미로, 조건에 따라 배열에서 항목을 찾는다는 것을 나타냅니다. 이건 더 어렵기 때문에 얘기하지 않겠습니다.
2.CURD 추가, 수정, 읽기, 삭제
추가
코드 복사 코드는 다음과 같습니다.
db.collection->insert({'name' => ' caleng', 'email' => 'admin#admin.com'})
아주 간단하지 않나요? 네, 필드 제한이 없습니다. 원하는 대로 데이터를 삽입하세요
수정
코드 복사 코드는 다음과 같습니다:
db.collection.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } ) ; 1보다 큰 첫 번째 레코드만 업데이트됩니다.
db.collection.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true ); 3보다 큰 모든 레코드가 업데이트되었습니다.
db.collection.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false ) ; 4보다 큰 레코드는 첫 번째 레코드에만 추가됩니다.
db.collection.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true , true ); 5보다 큰 모든 레코드 추가
쿼리
코드 복사 코드는 다음과 같습니다.
db.collection.find(array( '이름' => '베일링'), array( 'email'=>'email@qq.com'))
db.collection.findOne(array('name' => '베일링'), array('email''email@qq.com') )
두 가지 다른 방법으로 쿼리를 작성했다는 것을 알 수 있습니다. 사실 요리를 다르게 하는 것과 같습니다. 다양한 맛을 만들어내게 됩니다. 이 두 가지 조미료의 다양한 기능을 알려드리겠습니다.
findOne()은 문서 객체만 반환하고, find()는 컬렉션 목록을 반환합니다.
즉, 예를 들어 특정 데이터 조각의 세부 정보만 확인하려는 경우 findOne()을 사용할 수 있습니다.
다음과 같은 특정 정보 집합을 쿼리하려는 경우; 뉴스 목록은 find()로 사용할 수 있습니다.
그러면 모두가 내가 이 목록을 정렬하고 싶다고 생각할 것입니다. 문제 없습니다. mongodb가 진심으로 서비스를 제공할 것입니다.
코드 복사 코드는 다음과 같습니다. :
db.collection.find().sort({age:1}); //나이 순으로 정렬
db.collection.find().sort({age:-1}); //나이순으로 역순으로 정렬
db.collection.count(); //전체 데이터 개수 가져오기
db.collection.limit(1) //데이터 시작 위치 가져오기
db.collection.skip(10); //데이터 위치의 끝을 구합니다
//이런 식으로 10개의 데이터를 가져와서 정렬하는 연산을 구현했습니다.
삭제
삭제는 Remove()와 drop() 두 가지 작업이 있습니다.
코드 복사 코드는 다음과 같습니다.
db.collection.remove({"name",'jerry'} ) / /특정 데이터 삭제
db.collection.drop() //컬렉션의 모든 데이터 삭제
고유 연산
코드 복사 코드는 다음과 같습니다.
db.user. 뚜렷한('이름' , {'나이': {$lt : 20}})