63. Aggregate: Query tổng hợp, Join dữ liệu giữa các Collections | NodeJS + MongoDB | TrungQuanDev

preview_player
Показать описание
#trungquandev #reactjs #nodejs #mongodb
➡️ Buổi hôm nay chúng ta sẽ đi xử lý một vài vấn đề UI UX phát sinh, tìm hiểu thêm cách dùng kiểu dữ liệu dạng ENUM, rồi tới kiến thức chính quan trọng nhất đó là Aggregate: Query tổng hợp, Join dữ liệu giữa các Collections trong MongoDB nhé.
➡️ Xem xong video này rồi có cảm nghĩ gì thì bạn hãy comment bên dưới chia sẻ cho mình biết với nhé.
🏅 Học chuẩn thực tế để đi làm, để chuẩn bị hành trang vững chắc cho sự nghiệp tương lai.

🎁 DOWNLOAD FULL SOURCE CODE của toàn bộ dự án (Pro & Advanced) cũng như Donate ủng hộ mình ly cafe nếu bạn muốn 🤝
👉 Đầu tiên cần phải làm rõ một điều: Mình KHÔNG BÁN CODE cũng như KHÔNG BÁN KHÓA HỌC gì ở đây hết. Bởi vì mình đã cung cấp đầy đủ mọi tài nguyên cần thiết cho trường hợp bạn muốn học FREE Miễn Phí từ đầu rồi.
👉 ĐIỀU QUAN TRỌNG TIẾP THEO: Bạn cần phải hiểu rõ về lý do tại sao mình lại chia ra 3 gói Donate cũng như sự khác nhau giữa 3 gói này là gì. Mọi thông tin mình đều đã công khai ở bài viết trên blog chính chủ từ mình nhé, bởi vì nội dung khá dài. Bạn nên dành thời gian đọc nó trước khi bắt đầu khóa học cực kỳ chất lượng này.
👉 Link bài viết: 👇

🥉 FREE PACK (No Sponsor)

🥈 GOLD PACK (Gold Sponsor)

🥇 DIAMOND PACK (Diamond Sponsor - VIP)

🏆 HOẶC NẾU BẠN KHÔNG CÓ THẺ VISA THANH TOÁN QUỐC TẾ THÌ CÓ THỂ LIÊN HỆ TRỰC TIẾP VỚI MÌNH TẠI ĐÂY ĐỂ LẤY TÀI NGUYÊN HỌC TẬP NHÉ 👇
👑 Lưu ý: Video hướng dẫn chi tiết cách Install Source Code (Pro & Advanced) đều đã có trong 2 Playlists của khóa học rồi nhé.

---
---
🎤 Mình trên các nền tảng Podcasts:
---
👋🏼 Join những cộng đồng lập trình văn minh lịch sự dưới đây nhé bạn:
---
🎒 Danh sách một vài món đồ trong góc làm việc của mình:
---
📝 Video Chapters - nội dung chi tiết:
00:00 Mở đầu
00:27 Mình là ai?
01:39 Những cộng đồng lập trình văn minh
02:38 Nội dung học phần hiện tại
02:51 Vấn đề hôm nay
04:38 Xử lý vài vấn đề UI UX phát sinh
06:09 Board Types và Kiểu dữ liệu ENUM
13:56 Aggregate Query tổng hợp MongoDB - Quan Trọng
---
📝 Link tài liệu liên quan để các bạn tham khảo mà trong video mình có nhắc đến:
- MongoDB Aggregate:
- MongoDB Lookup:
- JavaScript Primitive vs. Reference Values

---
| 💻 ☕️ TRUNGQUANDEV - MỘT LẬP TRÌNH VIÊN 💝 |
Рекомендации по теме
Комментарии
Автор

🎁 Note & Chia sẻ kiến thức hay tới các bạn:
🍀 Thời điểm mình viết comment này là mình đang ngồi hoàn thiện code giáo trình cho khóa MERN Advanced nâng cao sau khóa MERN Pro thì mình phát hiện ra một điểm nên tối ưu hơn nữa, đó là ở phút thứ 10:37 thay vì gọi lần lượt tất cả type của board để cho vào hàm valid() thì có thể viết gọn lại bằng Object.values() kết hợp Spread Operator của JS. Cụ thể:

🍀 Làm như trên thì sau này dù các bạn có thêm hay sửa gì vào cái BOARD_TYPES trong file constants thì ở những chỗ dùng Joi trong Model hay Validation cũng không cần phải đụng vào nữa. Tối ưu gọn gàng hơn luôn.
🍀 Chúc các bạn học tốt! Happy Coding! Nhớ đừng tiếc gì một lượt đăng ký kênh và chia sẻ kênh ủng hộ mình nhé ^^

trungquandev
Автор

video này quá đỉnh a ơi. Vừa hay và dài. Coi đã thật kkk

Mecoding
Автор

Riêng em, em thấy đoạn biến đổi dl để phù hợp với FE là hay nhất, anh làm em hiểu hơn về các hàm rồi dl json. Quá đã @@

nguyenvuanhduy
Автор

🍀Xem xong video này rồi có cảm nghĩ gì thì bạn hãy comment bên dưới cho mình biết với nhé 😄
🔔Like video cũng như Đăng Ký Kênh ủng hộ mình & Join cộng đồng Discord hoặc Facebook rất văn minh lịch sự tại đây nha:

trungquandev
Автор

hehee em đang làm project có phần join mà quên mất cách làm, nhớ anh có nên quay lại xem cách làm với sẵn lấy doc đọc thêm lun, chúc anh sức khoẻ nhenn

minat-ywqk
Автор

Anh ơi theo em tìm hiểu thì ngoài aggregate ra còn có một cách để lấy data từ các collection khác là populate và em thấy populate khá dễ hiểu. Anh có thể làm video so sánh 2 cách này được không ạ

truongtinhkalalala
Автор

45:13 cái khúc so sánh cards.columnId với columns._id, nghĩa là js không trực tiếp support so sánh ObjectId mà phải thông qua hàm toString() để convert cả hai về string thì mới so sánh được, hoặc theo cách 2 là dùng hàm equals() của mongodb thì mới so sánh được 2 cái dạng ObjectId đúng hong anh?

minat-ywqk
Автор

Chỗ cloneDeep ở phút 38:20, mình có thể sử dụng Spread Operator như này được không ạ?
const resBoard = {...board}

ĐứcTrịnhVăn-qx
Автор

Em xem và code theo thì hiểu luồng code chạy ntn, nhưng để code thì chắc hiện tại hơi khó

phuchuynhduy
Автор

Yeah cái join với cái query lồng nó cũng khiến mệt mỏi 😂😂

tuannguyenthai
Автор

Chào anh, cho em hỏi là sao đoạn biến đổi data loop để add cards vào trong columns, mình biến đổi ở tầng service mà không phải biến đổi ở tầng model luôn vậy anh?

huynhnhutanhduy
welcome to shbcf.ru