> 백엔드 개발 > PHP 튜토리얼 > mongodb에 대한 PHP 확장

mongodb에 대한 PHP 확장

高洛峰
풀어 주다: 2023-03-02 17:46:01
원래의
1205명이 탐색했습니다.

저희 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}})

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿