mongoose query builder

mangojang·2021년 12월 28일
0
post-thumbnail

본 글은 글쓴이가 꺼내보기 위함의 목적이 큰 글입니다 :)

find() 뒤에 붙어서 적용
User.find() //User - model
  .where('name').equals('zerocho') // name 이 zerocho 이면서
  .where('birth').gt(20) // birth가 20 초과 이면서
  .where('role').in(['owner', 'admin']) // role 이 owner또는 admin 인 경우 인 데이타를
  .sort('-medals') //medals기준 내림 차순 으로
  .limit(5) // 5개만 
  .select('name birth medals') // name, birth, medals 값만 보여줘라
  • where (필드명) : 어떤 필드를 조작할지 정함
  • equals (조건) : 조건과 일치하는 것
    .where(필드명).equals(조건)
    .equals(필드명,조건)
  • ne (조건) : 조건과 일치하지 않는 것
    .where(필드명).ne(조건)
    .ne(필드명,조건)
  • gt (숫자) : 숫자 초과 / lt (숫자 ) : 숫자 미만 / gte (숫자) : 숫자 이상 / lte (숫자) : 숫자 이하
    .where(필드명).gt(숫자)
    .gt(필드명,숫자)
  • in (배열) : 배열 안 값 중 하나라도 일치하는지 / nin (배열) : 하나도 일치 안 하는지 / all(배열) : 모두 다 일치하는 지
    .where(필드명).in(배열)
    .in(필드명,배열)
  • and (조건배열) : 모든 조건 만족 / or(조건배열) : 이 중 하나라도 만족 / nor(조건배열 ) : 다 만족 X
    // where 같이 안씀!!
    .and([조건1, 조건2,....]);
  • distinct(필드명) : 필드의 값들 중 중복되는 것은 제거하고 반환
    .distinct(필드명)
  • regex(정규표현식) : 정규표현식에 해당하는 필드값을 반환
    .where(필드명).regex(정규표현식)
    .regex(필드명,정규표현식)
  • select(필드명) : 필드명 만 보여줌. 복수는 띄어쓰기로 구분. _id는 빼지않는 이상 기본으로 보여줌.
    .select('필드명1 필드명2')
    .select('-_id 필드명2') // _id 값 안보여줌 (앞에 - 붙임)
    .select({필드명1: 1, 필드명2: 1, 필드명3: 0}) // 1 - 보여줌, 2 - 안보여줌
  • skip(숫자) : 숫자만큼 건너뛰기 / limit(숫자) : 숫자만큼만 반환 ——>게시판 랜더시 많이 쓰임.
    .skip(10).limit(5)
  • sort : 정렬 오름차순, 내림차순
    .sort('필드명1 -필드명2'); // 양수는 오름차순, 음수는 내림차순 
    .sort({ 필드명1: 1, 필드명2: -1 });
    .sort({ 필드명1: 'asc', 필드명2: 'desc' });
    .sort({ 필드명1: 'ascending', 필드명2: 'descending' }); 

참고문헌

https://www.zerocho.com/category/MongoDB/post/59bd148b1474c800194b695a

https://poiemaweb.com/mongoose

profile
한 걸음 한 걸음 계속 걷는 자가 일류다

0개의 댓글