#mongodb

mongoDB 에서 날짜를 저장할 때 어떤 타입을 사용해야 하나요 ? timestamp 와 string 의 차이가 무엇인가요 ?

몽고디비에서 날짜를 저장할 때 timestamp 과 string 타입 두 방법 모두 사용할 수 있다고 알고 있는데요. 각 타입을 저장할 경우 어떤 장단점이 있는지 궁금합니다. 처음에 날짜는 무조건 datetime 으로 저장해야한다고 생각했는데 데이터 포맷만 잘 맞춰주면 string 타입을 적용해도 문제 없다는 글을 봐서요. 현재 날짜를 저장하기 위해서 timestamp 타입을 사용하고 있는데 저장 하는 시점에 { $date: ... } 형식으로 데이터를 변환해줘야 하고, 직접 수정할 때에도 타입을 신경써서 변경해줘야 해서 플로우가 많이 복잡해요. 그래서 그냥 string 타입으로 변경해서 사용해도 되는건지 궁금합니다.

기술

#mongodb

#timestamp

#string

답변 1

댓글 0

Up 1

조회 49

웹 배포시 프론트엔드 백엔드 따로 하는게 정석인가요?

안녕하세요 현재 프론트엔드 개발 취준생이고 포폴겸 실제 서비스겸 프로젝트로 MERN 스택으로 CRA + express.js로 해가지고 배포하려는데 여기저기 찾아보니 대부분 서버용 따로 클라이언트용 따로 해서 2개를 배포해서 쓰더라고요. 제 플젝은 하나의 레포로 되어있어 굳이 분리 안해도 되면 한 번에 배포하고 싶은데 이 방식은 잘 안쓰는 방식인가요? 그리고 이용자가 20명 정도는 고정으로 있을 예정이라 무료 플랫폼 써야하는데 Netlify, Vercel등 선택지가 다양해서... 보통 어떤 무료 플랫폼으로 배포하시나요? 감사합니다

기술

#react

#express

#fullstack

#deployment

#mongodb

답변 1

댓글 1

Up 1

조회 165

MongoDB text search와 regex search의 차이점은 무엇인가요?

간단한 검색 기능을 만들고 있는데, 몽고 디비 스펙을 보니까 일반 text search와 regex search 2가지를 지원하더라고요. string 검색할때 text search와 regex search의 차이점은 무엇인가요?

기술

#mongodb

#regex

#text-search

답변 2

댓글 1

조회 53

mongo db aggregation 평균구하기

데이터가 어쩌다보니 string형태로 들어가 있네요.. 데이터를 숫자로 넣으면 가장 좋겠지만 일단은 그냥 사용하려고 합니다 이때 string 형태의 데이터를 숫자로 변환해서 그룹별로 평균을 구할수 있을까요? 일단 저는 아래 코드처럼 사용했습니다. 전부 null이 나오네요

기술

#mongodb

#aggregation

#average

답변 2

댓글 0

조회 93

혹시 몽고디비 SQL 의 Group By 와 같은 기능이 있나요 ?

MySQL (SQL) 만 사용하다 이번에 몽고디비 (NoSQL) 를 처음 사용 해봅니다. 아직 사용법을 잘 모르겠는데 혹시 SQL 에서의 Group By 와 같은 기능을 사용할 수 있나요 ? Filter 랑 Sort 는 잘 쓰겠는데 Group By 는 원래 안되는것 같기도 하고 잘 모르겠네요. 도와주세요 ㅠㅠ

기술

#mongodb

#nosql

#sql

답변 1

댓글 1

조회 111

몽고 디비에서 type 값을 저장하는 필드를 추가하려고 하는데 어떤 데이터 타입을 사용할지 고민입니다. (number vs string)

RDB 에서는 주로 number 로 저장 했는데 몽고디비에서는 조금 다르게 string 으로 저장해도 괜찮을까요 ? number 로 저장하고 사용자에게 보여줘야 하는 경우에 매핑해서 string 값으로 보여주곤 했는데요. 몽고디비는 RDB 와는 다른 방법으로 접근법 해야한다고 들었고 string 으로 저장해버리면 어떨가 싶어서요. 왜냐하면 몽고디비는 '저장된 값을 그대로 화면에 보여준다' 라는 기조가 있기 때문에 number 를 string 으로 변환하는 중간 과정을 없애도 괜찮아 보이고 string 값을 저장 하더라도 큰 문제는 없어 보여서요. 다른 분들은 어떻게 사용하시나요 ? 이렇게 사용해보신분 있나요 ?

기술

#mongodb

답변 1

댓글 1

Up 1

조회 60

mongo db 에서 정렬을 하는데 null을 가장 뒤로 놓고싶어요

[{a:2}, {a:3}, {a:1}, {a: null}] 의 형태로 데이터가 있는데 db.collectioin.sort({ a: 1 })로 정렬하면 null이 가장위에 나와요. 결과: [ {a:null}, {a:1}, {a:2}, {a: 3}] 이걸 [{a:1}, {a:2}, {a: 3}, {a:null}] 로 나오게 할 수 있나요?

기술

#mongodb

#null

#sort

답변 1

댓글 1

조회 70

몽고DB javascript에서 Date타입 필터링 하는 방법

몽고DB에서 document의 Date 타입 필드 중에서 현재 날짜 보다 이전 시간의 값을 갖는 document를 필터링 하려고 하는데 어떤식으로 문법을 짜야하는지 모르겠습니다. 혹시 어떻게 작성하는지 아시는 분 있으실까요?

기술

#mongodb

#date

답변 1

댓글 0

조회 59

mongoDB조회 결과가 안보여요

아래 코드처럼 조회했는데 console.log(result)를 하면 cursor 라는 object가 나오더라고요. 데이터는 잘 들어가 있는데 왜 그럴까요?? 환경은 node에서 mongodb 라이브러리 사용했습니다.

기술

#mongodb

답변 1

댓글 0

조회 49

NodeJS MongoDB driver 설치 후 Typescript build 에러 발생하는 문제

안녕하세요. Node.js 사이드 프로젝트에서 MongoDB 를 사용해보려고 합니다. 설치해서 npm run dev 를 해서 사용하는데는 문제가 없었는데 npm run build 를 하니까 갑자기 167 개의 Typescript 에러가 발생하고 있어요. 로그를 보니 tsc 명령에서 문제가 발생하고 있고 모든 에러의 위치가 node_modules/ 내부로 나오네요. 혹시 mongodb 를 typescript 와 사용하지 못하는 문제가 있는걸까요 ? 아니면 특정 버젼 혹은 @types 모듈을 설치해야 하는걸까요 ? 도와주세요 ㅠㅠ

기술

#mongodb

#typescript

답변 1

댓글 0

조회 73

mongoDB not null check는 어떻게 하나요?

mongoDB를 처음 사용해 보는데요. 자유롭게 데이터를 넣을수 있어서 좋아요. 그런데 데이터를 조회할 때 null값이 아닌 값들을 가져오고 싶어서 exists라는걸 이용해서 db.collection.find({""value"":{$exists:true}}); 로 조회를 했는데 null값을 가지고 있는 것들도 다 가지고 오더라고요.. IS NOT NULL 로 조회하는 방법이 있나요?

기술

#mongodb

답변 1

댓글 0

조회 132

mongoDB에 JSON으로 Datetype입력은 어떻게 하나요?

mongoDB를 사용하면서 날짜 데이터를 넣고 싶은데, {createAt: '2023-03-02'} 이렇게 넣으면 그냥 string type으로 들어가는 것 같더라고요. 사용하고 있는 툴은 compass입니다. add data > insert document에 JSON을 직접 입력해서 데이터를 넣을 때 어떤 형식으로 넣어야 할까요?

기술

#mongodb

답변 1

댓글 1

조회 96

mongoose 참조 관련 질문입니다. (수정)

nodejs, mongoose, mongodb 그리고 데이터 확인용으로 mongodbCompass를 사용중임을 알립니다. 현재 A,B 컬렉션이 있고, A 가 B를 참조하고 있습니다. B컬렉션에서 데이터를 삭제하면 B컬렉션에서 삭제되고 로그를 찍어보면 정상적으로 A컬렉션에서도 참조하고 있는 B 데이터가 빠지는 걸 확인했는데 mongodb Compass에서는 바뀌지 않습니다. 원래 mongodb compass에서 느리게 처리되는 건지 살짝 멘붕이 와서 질문드립니다.. -------------------------------- 현재까지 실험결과 B컬렉션 데이터 2개 추가 시 -> A 컬렉션에 대해 findById 결과 --> B 데이터 2개 추가 -> A 컬렉션에 대해 findOne({_id:_id}) 결과 --> B 데이터 2개 추가 B컬렉션에 대해 데이터 1개 삭제시 -> A 컬렉션에 대해 findById 결과 --> B 데이터 1개 , (1개 삭제) -> A 컬렉션에 대해 findOne({_id:_id}) 결과 --> B 데이터 2개 (삭제 x) -> mongoCompass -> B 데이터 1개 , A가 참조하는 B 데이터 2개 (삭제 x) 추가로 B컬렉션 데이터 1개 추가 시 -> A 컬렉션에 대해 findById 결과 --> B 데이터 2개 , (1개 추가) -> A 컬렉션에 대해 findOne({_id:_id}) 결과 --> B 데이터 2개 (이전 1개 삭제후 새로운 참조 데이터 추가 됨 ) -> mongoCompass -> B 데이터 2개 , A가 참조하는 B 데이터 2개 (이전 1개 삭제후 새로운 참조 데이터 추가 됨) stackoverflow 와 mongoose 공식문서를 참고했습니다만 이유는 잘 모르겠습니다.. 코드도 같이 첨부하겠습니다.

기술

#nodejs

#mongodb

답변 1

댓글 0

조회 46

nodejs driver로 replicaSet option 변경하기 도움 부탁드립니다.

아래 코드는 https://medium.com/@cramirez92/build-a-nodejs-cinema-microservice-and-deploying-it-with-docker-part-1-7e28e25bfa8b 여기에서 공부하다가 나온 코드입니다. getMongoUrl을 찍으면 다음과 같이 나옵니다. "mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019/movies" 현재는 해당 코드가 deprecated 되어서 실행이 전혀 안되서 현재버전으로 바꿔서 짜보고 싶은데 옵션 넣어주는 코드가 어떤 의미 인지 모르겠습니다. 도움주시면 정말 감사드리겠습니다. mongodb documentaion 링크도 같이 남겨드립니다. https://www.mongodb.com/docs/v6.0/replication/ https://mongodb.github.io/node-mongodb-native/4.13/index.html 추가로 const MongoClient = require('mongodb'); const {MongoClient} = require('mongodb'); 의 차이도 궁금합니다.

기술

#nodejs

#mongodb

답변 1

댓글 0

조회 72