일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 배포 프로세스
- 디자인패턴
- m4 pro
- typescript
- esbuild
- Logrus
- 사설 ip
- go
- GoF
- Infra
- AWS
- 오블완
- 배포 파이프라인
- golang
- elasticsearch
- javascript
- 티스토리챌린지
- cosine similarity metric
- UnBuffered channel
- gitops
- body size
- 코사인 유사성 메트릭스
- intellij ide
- Buffered channel
- goland
- Kubernetes
- Intellij
- kube-prometheus-stack
- http 413
- apollo router
Archives
- Today
- Total
Fall in IT.
Nodejs Sequelize raw query 사용법 본문
반응형
안녕하세요.
ORM을 사용하게 되면 raw query를 전혀 사용하지 않을 수 있지만, 간혹 사용해야 하는 상황이 발생하기도 합니다.
오늘은 Nodejs의 ORM인 Sequelize에서 raw query 사용하는 방법에 대해서 알아보도록 하겠습니다.
Dynamic SQL을 사용한 나쁜 예
let query = `
SELECT * FROM user
LEFT JOIN team ON user.team_id = team.id
WHERE user.id = ${userId}
`;
let user: User = await sequelize.query(
query,
{
replacements: {personId: person.id},
type: Sequelize.QueryTypes.SELECT,
raw: true
});
Replacements를 사용한 좋은 예
let query = `
SELECT * FROM user
LEFT JOIN team ON user.team_id = team.id
WHERE user.id = :userId
`;
let user: User = await sequelize.query(
query,
{
replacements: {personId: person.id},
type: Sequelize.QueryTypes.SELECT,
raw: true
});
Replacements 외에도 Sequelize에서는 Bind Parameter를 사용하는 방법도 제공하고 있습니다.
아래 주소를 참고해주세요.
https://sequelize.org/master/manual/raw-queries.html#replacements
Manual | Sequelize
Raw queries As there are often use cases in which it is just easier to execute raw / already prepared SQL queries, you can use the function sequelize.query. By default the function will return two arguments - a results array, and an object containing metad
sequelize.org
모두 즐거운 코딩하세요~
반응형
'프로그래밍언어 > Node.js' 카테고리의 다른 글
Koa를 사용하여 rest api 서버 만들기 (0) | 2018.06.06 |
---|---|
MAC에서 npm으로 광역모듈 설치시 에러 (0) | 2016.09.28 |
모듈 - npm으로 모듈설치하는 방법 (0) | 2016.07.17 |
Node.js에서 세션 사용하는 방법 (0) | 2016.04.27 |
Node.js에서 쿠키하는 사용방법 (0) | 2016.04.26 |
Comments