본문 바로가기
SQL

MYSQL - NodeJS 4

by 집요한 개발자 2021. 4. 9.

시퀀스 쿼리 사용하기

 

 INSERT INTO nodejs.users (name, age, married, comment) VALUES ('zero', 24, 0, '자기소개1');

-> const { User } = require('../models'); // require : 해당폴더 안에서 index.js 폴더를 찾는다

    const { Op } = require('sequelize');

    User.create({

       name: 'zero',

       age: 24,

       married: false,

       comment: '자기소개1;,

     });

 

SELECT name, married FROM nodejs.users;

-> User.findAll({

       attributes:['name', 'married'],

});

 

SELECT name, age FROM nodejs.users WHERE married = 1 AND age > 30;

-> User.findAll({

       attributes: ['id', 'name'],

       where: {

          [Op.or]: [{ married: true }, { age: { [OP.gt]: 30 } }],

       },

     });

 

SELECT id, name FROM users WHERE married = 0 OR age > 30;

-> User.findAll({

       attributes:['id', 'name'],

       where: {

          [Op.or]: [{ married: false }, {age: {Op.gt]: 30 }],

       },

     });

 

SELECT id, name FROM users ORDER BY age DESC LIMIT 1 OFFSET 1;

-> User.findAll({

       attributes: ['id', 'name'],

       order: [['age', 'DESC']],

       limit: 1,

       offset: 1,

    });

 

수정

UPDATE nodejs.users SET comment = '바꿀 내용' WHERE id = 2;

->User.update({

       comment: '바꿀 내용'

   }, {

       where: { id: 2 },

   });

 

삭제

DELETE FROM nodejs, users WHERE id = 2;

->User.destory({

       where: { id: 2 },

    });

 

 

관계 쿼리

 

const user = await User.findOne({});

console.log(user.nidck); // 사용자 닉네임 결과값이 자바스크립트 객체

 

include로 JOIN과 비슷한 기능 수행 가능

-> const user = await User.findOne({

       include: [{

          model: Comment,

       }]

    });

 

get+모델명으로 데이터 로딩 가능(수정은 set, 삭제는 remove)

-> const user = await User.findOne({});

    const comments = await user.getComments();

 

as로 모델명 변경 가능

-> db.User.hasMany(db.Comment, { foreignKey: 'commenter', sourceKey 'id', as: 'Answers' });

 -->const user = awit User.findOne({});

     const comments = await user.getAnswers();

ROW 쿼리

-> const [result, metadata] = await sequelize.query('SELECT * from comments');

'SQL' 카테고리의 다른 글

mysql 유저 생성후 권한 줄때 에러 해결방법  (0) 2021.12.27
Mysql 설치시 server has failed 에러 해결 방법 중 하나  (0) 2021.12.27
MYSQL - NodeJS 2.1  (0) 2021.04.08
MYSQL - NodeJS 3  (0) 2021.04.08
MYSQL - NodeJS 2  (0) 2021.04.08

댓글