MongoDB에서 SQL의 LIKE 기능 복제
SQL의 LIKE
연산자는 패턴 기반 검색을 단순화합니다. 예를 들어, 이름에 "m"이 포함된 모든 사용자를 찾는 것은 쉽습니다.
<code class="language-sql">SELECT * FROM users WHERE name LIKE '%m%';</code>
직접적인 LIKE
대응 기능이 부족한 MongoDB는 유사한 기능을 위해 정규식을 활용합니다. 위 SQL 쿼리에 대응하는 MongoDB는 다음과 같습니다.
<code class="language-javascript">db.users.find({ name: /.*m.*/ });</code>
정규식 /.*m.*/
을 사용하여 name
필드의 문자열 내 어디든 "m"이 포함된 문서를 찾습니다. .
는 모든 문자와 일치하고, *
은 0개 이상의 일치와 일치하며, m
는 검색할 리터럴 문자입니다.
더 간단하지만 정확도가 떨어지는 대안은 다음과 같습니다.
<code class="language-javascript">db.users.find({ name: /m/ });</code>
이렇게 하면 "m"이 하나 이상 포함된 모든 name
필드를 찾습니다.
MongoDB의 정규식 기능은 유연성 측면에서 SQL의 LIKE
연산자를 능가하므로 더욱 복잡한 패턴 일치가 가능합니다. MongoDB 정규식에 대한 자세한 내용은 공식 MongoDB 문서 및 정규식에 대한 MDN 웹 문서를 참조하세요. (https://www.php.cn/link/f84f4800d13741a98ddf9bc46e58355c
, https://www.php.cn/link/a93dddc1fd67c3a6409fafb5801d7d50
는 실제 링크로 대체해주세요.)
위 내용은 MongoDB에서 SQL의 LIKE 연산자를 시뮬레이션하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!