Nestjs를 사용해서 백엔드 코드를 작성하면서, 데이터 처리를 javascript로 할지, sql 쿼리 프로시저로 처리할지에 대한 선택지가 생긴다.
두 가지 방법 다 작성해 보았다.
const refinedBuyModel = buyModel.map((model) => {
if (model.BrandCode === 'JUR') {
// 브랜드가 '유라'면 우선순위가 1위
return { ...model, BrandOrder: 1 };
} else if (model.BrandCode === 'CAS') {
// 브랜드가 '까소디자인'이면 우선순위가 2위
return { ...model, BrandOrder: 2 };
} else if (model.BrandCode === 'BRE') {
// 브랜드가 '브래빌'이면 우선순위가 3위
return { ...model, BrandOrder: 3 };
} else {
// 브랜드가 없으면 우선순위가 4위
return { ...model, BrandOrder: 4 };
}
});
(CASE WHEN BM.BrandCode = 'JUR' THEN 1
WHEN BM.BrandCode = 'CAS' THEN 2
WHEN BM.BrandCode = 'BRE' THEN 3
ELSE 4 END) AS [BrandOrder]
SQL 쿼리가 훨씬 간결하게 표현되는 것 같다.