Select 1 cột và Select * - bất ngờ về kết quả so sánh hiệu năng | Tối ưu SQL | SQL Tutorial

  Рет қаралды 17,632

Learning Database with Tran Quoc Huy

Learning Database with Tran Quoc Huy

Күн бұрын

#postgresql #postgresqltutorial #postgres
Mục tiêu: Tôi nhận được nhiều câu hỏi về vấn đề select 1 cột và select * thì có khác nhau về hiệu năng thực thi câu lệnh hay không, trong video này anh em cùng nhau giải đáp và demo thực tế nhé
Ghi chú: Nếu bạn là một lập trình viên và muốn phát triển sự nghiệp một cách nhanh chóng hơn. Tôi có một khoá học có thể giúp bạn phát triển rất nhanh (cả về CHIỀU RỘNG và CHIỀU SÂU), tại khoá học này bạn sẽ được chia sẻ tất cả những kinh nghiệm và kiến thức của tôi đã tích luỹ trong hơn 10 năm trực tiếp điều hành Wecommit - công ty chuyên tư vấn và tối ưu các cơ sở dữ liệu và hệ thống lớn.
Xem chi tiết khoá học của tôi ở đây: wecommit.com.v...
Bạn có thể xem các dự án mà tôi đã trực tiếp thực hiện tại đây: wecommit.com.v...
🎯 Một số Video khác bạn có thể xem:
- Quy trình 6 bước phải biết khi tối ưu câu lệnh SQL: • Quy trình 6 bước buộc ...
- Hiểu toàn bộ kiến thức về PostgreSQL trong 1h30 phút: • Hiểu toàn bộ PostgreSQ...
- Học SQL Server trong 60 phút : • Học SQL Server trong 6...
- Học MongoDB trọn vẹn trong 1 giờ 30 phút: • Học MongoDB trọn vẹn t...
- Hiểu kiến trúc của cơ sở dữ liệu Oracle trong 20 phút: • Hiểu Oracle Database t...
📱 Nếu bạn muốn liên hệ với tôi:
Zalo: 0888549190
Linkedin: / huytq
Facebook: / tranquochuy.toiuu
🌐 Nguồn tài liệu: Tôi tổng hợp từ các kiến thức và kinh nghiệm của bản thân trong hơn 10 năm làm các dự án tối ưu cơ sở dữ liệu.
#toiuu100x #tranquochuy #wecommit #databasedesign #databaseperformance #databasetutorial #toiuucosodulieu #thietkecosodulieu #toiuusql

Пікірлер: 94
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Tôi có 1 chương trình sẽ khiến anh em DEV trở nên KHÁC BIỆT nhờ năng lực và tư duy tối ưu SQL, tối ưu Database. Đây là chương trình có phí, do tôi trực tiếp thiết kế và truyền lại toàn bộ kinh nghiệm của bản thân mình. Các bạn quan tâm có thể xem chương trình "Từ điển tối ưu 100x hiệu năng" này tại đây: wecommit.com.vn/tu-dien-toi-uu-100x-hieu-nang/
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Nếu các anh em thấy thấy video có giá trị, hãy like video để mình có thêm động lực và tiếp tục hành trình chia sẻ các nội dung mới nhé.
@reviewnganhhoc1942
@reviewnganhhoc1942 Жыл бұрын
những video của anh rất thực tế và đầy kiến thức, mong anh sẽ ra thêm nhiều video nữa cho cộng đồng. Một kệnh cực hay về Database
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn những năng lượng tích cực từ comment của anh em.
@mgo730
@mgo730 Жыл бұрын
Bài chia sẻ hay và rất bổ ích. Mong anh có thể chia sẻ nhiều hơn cho cộng đồng.😍
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn anh em. Những bình luận tích cực và tình cảm của anh em là động lực và năng lượng cho tôi tiếp tục hành trình chia sẻ.
@J2TeamNNL
@J2TeamNNL Жыл бұрын
Cảm ơn anh rất nhiều về kiến thức đã chia sẻ ạ
@viettiennguyen633
@viettiennguyen633 Жыл бұрын
Bổ ích quá anh ơi, những kiến thức sharing của anh rất thưc tế, có giá trị và mang tính ứng dung cao ạ .
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn sự ủng hộ của anh em.
@diepngo1472
@diepngo1472 6 ай бұрын
cám ơn anh vì những kiến thức hữu ích, giờ mới hiểu bản chất của việc Select 1 cột và Select * là phụ thuộc vào cách viết index cho các field ( select hay where ,...) và chiến lược thực thi.
@tranquochuywecommit
@tranquochuywecommit 6 ай бұрын
có rất nhiều video phân tích khác trong kênh, em có thể xem thêm để biết nhiều khía cạnh khác nữa em nhé. Chúc em thu được nhiều giá trị hữu ích cho bản thân mình.
@nguyenhoang713
@nguyenhoang713 6 ай бұрын
Bai chia se rat huu ich. Cam on anh!
@luonguct
@luonguct 2 ай бұрын
Cảm ơn bạn! Bài giảng rất hay vì chi tiết. Qua Video bạn đã chỉ ra muốn giảm chi phí thì phải tạo Index. Mình có câu hỏi này mong bạn giải thích thêm: Điều gì xảy ra nếu ta tạo Index cho tất cả các bảng?
@huyennguyenvan8094
@huyennguyenvan8094 2 ай бұрын
Em nghĩ trên trường hợp thực tế rất ít case study mà index cho tất cả các trường trong tất cả các bảng, nếu có thật thì khó tồi
@tanmao5931
@tanmao5931 Жыл бұрын
Cảm ơn anh, đã chia sẻ những kiến thức rất chi tiết và hữu ích về bản chất khi thực thi câu lệnh sql! 🎉
@vuduchuy8218
@vuduchuy8218 27 күн бұрын
Hay qua! Cam on anh
@mran7391
@mran7391 Жыл бұрын
Hay quá anh ơi, em đang chơi vs postgresql mấy năm nay rồi mà amateur quá, giờ cho anh chia sẻ thông tin thì quá tuyệt vời. Chúc anh thành công vs dự định này
@thienngo2953
@thienngo2953 2 ай бұрын
Chia sẻ rất bổ ích. Cám ơn anh
@nghiatranthanh3806
@nghiatranthanh3806 8 ай бұрын
Các bài rất hữu ích. Cảm ơn thầy Huy nhé
@relax7643
@relax7643 11 ай бұрын
Rất hay, mong a có 1 series đầy đủ về DB và so sánh các loại DB vs nhau để ae học hỏi ❤
@quoctoancao4936
@quoctoancao4936 Жыл бұрын
Cảm ơn Thầy Huy, bài chia sẻ của Thầy rất hay và ý nghĩa
@xuanhopdo9712
@xuanhopdo9712 5 ай бұрын
xịn đét. giờ mới xem được :v từ giờ thiết kế DB sẽ chăm đánh index hơn :v thanks anh ạ
@lyminhhoang1319
@lyminhhoang1319 Жыл бұрын
quá hay anh ạ, mong anh ra thêm video về phần này
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Anh em đăng ký kênh nhé, mình sẽ còn tiếp tục chia sẻ nhiều nội dung trong thời gian tới.
@hungle-yk3cj
@hungle-yk3cj 9 ай бұрын
cảm ơn anh. Giờ mới hiểu ý nghĩa Select *
@longnguyenvan8405
@longnguyenvan8405 Жыл бұрын
Cảm ơn anh Huy giúp em hiểu ra được nhiều điều
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Những bình luận như thế này là động lực giúp anh tiếp tục chia sẻ các kiến thức và kinh nghiệm của mình. Cảm ơn em vì điều ấy.
@taitrinh62_
@taitrinh62_ 5 ай бұрын
*_Cám ơn thầy đã chia sẻ ạ_*
@thangnguyenquyet3340
@thangnguyenquyet3340 7 ай бұрын
Cộng đồng cảm ơn anh rất nhiều ạ
@tranquochuywecommit
@tranquochuywecommit 7 ай бұрын
cảm ơn anh em đã ủng hộ kênh của mình. Về tối ưu db thì trên kênh có nhiều video áp dụng luôn vào thực tế, anh em có thể xem cùng, bổ trợ thêm cho video này anh em nhé
@BaoNguyen-rh4fi
@BaoNguyen-rh4fi 4 ай бұрын
Cảm ơn anh. Hay quá ạ
@tranquochuywecommit
@tranquochuywecommit 4 ай бұрын
anh có 1 video full về PostgreSQL trên kênh này đấy, em có thể xem để có nhiều thứ chi tiết và bổ trợ cho video này nhé
@taitrinh62_
@taitrinh62_ 5 ай бұрын
*_Công nhận thầy dùng mic dễ nghe hơn, không bị ồn ạ_*
@huychu6711
@huychu6711 Жыл бұрын
video hay quá anh ơi!
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Anh em thấy sao về dự định mình chia sẻ cuối video?
@quangphongtran3558
@quangphongtran3558 Жыл бұрын
Quá hay!
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Anh em like video để mình thêm động lực nhé. Cảm ơn anh em nhiều.
@VuvaToniKroos
@VuvaToniKroos Жыл бұрын
Cảm ơn anh, chúc anh nhiều sức khỏe
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
cảm ơn anh em.
@ezMagic
@ezMagic Жыл бұрын
Ủng hộ a chia sẻ kiến thức về postgresql nha anh
@phamduy5287
@phamduy5287 Жыл бұрын
quá hay luôn
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn anh em.
@trieutruong2410
@trieutruong2410 Жыл бұрын
cảm ơn anh Huy rất nhiều.
@Cikimelog
@Cikimelog Жыл бұрын
Hay quá
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn anh em. Dành tặng 1 like cho video này anh em nhá.
@vuduchong
@vuduchong 2 ай бұрын
giờ mới hiểu vấn đề mà lâu nay tưởng đúng
@anhdungnguyen6507
@anhdungnguyen6507 9 ай бұрын
quá hay anh
@ThuyNguyen-tu6gz
@ThuyNguyen-tu6gz Жыл бұрын
kiến thức quá là cơ bản
@TP-kj2sm
@TP-kj2sm Жыл бұрын
Theo mình hiểu thì SELECT thừa cột tuy có cùng cost, nhưng vừa tốn RAM để lưu trữ dữ liệu thừa, lại vừa tốn thời gian đọc những cột thừa từ ổ cứng. Vừa mất thời gian, vừa mất dung lượng, nên hạn chế tối đa việc SELECT *
@nthungsol
@nthungsol Жыл бұрын
Đúng rùi, cost để query là như nhau nhưng thừa cột thì sẽ tốn ram chưa kể với remote db thì payload để transfer data cũng lớn hơn nên trễ hơn
@workwithme23
@workwithme23 7 ай бұрын
thực tế thì chắc là chẳng bao giờ dùng select * trong product đâu bác
@anhthangbui8707
@anhthangbui8707 5 ай бұрын
Em cảm ơn anh đã chia sẻ kiến thức rất hữu ích. Em có 1 thắc mắc mong được anh chỉ bảo. Trong video của anh có 2 câu query ứng với 2 cost như sau: explain select * from payment seq scan on payment ( cost = 0.00 253.96..) explain select * from payment where amout = 1.99 seq scan on payment ( cost = 0.00 290.45..) như vậy có thể nói là câu query không điều kiện where sẽ nhanh hơn câu query có điều kiện where. ( vì 253.96 < 290.45) tuy nhiên trong thực thế làm việc thì với csdl lớn khi query có điều kiện where sẽ nhanh hơn rất nhiều. ( từ khi thực thi đến khi hiển thị data sẽ nhanh hơn) anh có thể chỉ giúp em nguyên nhân được không ạ? em xin cảm ơn.
@ICOReviewtoken
@ICOReviewtoken Жыл бұрын
Hóng serries postgresql của sếp
@luck8citygod
@luck8citygod 10 ай бұрын
Hay quá a
@DinhHoangBaoChau
@DinhHoangBaoChau 5 ай бұрын
Bài chia sẻ rất ý nghĩa, cảm ơn Thầy. Thầy cho em hỏi chút là lúc trước thầy làm về mảng web hay thuần về data thôi ạ?
@tranquochuywecommit
@tranquochuywecommit 5 ай бұрын
chuyên về tối ưu cơ sở dữ liệu anh em nhé
@vanthuannguyen8984
@vanthuannguyen8984 Жыл бұрын
Cảm ơn anh ạ
@guytech9502
@guytech9502 Жыл бұрын
18:50 Dự định về chia sẻ kiến thức PostgreSQL -> Like -> Đặt gạch giữ chỗ nha @Huy
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
okie anh em nhé. Đang triển khai rồi anh em ah
@inhngocnguyen7184
@inhngocnguyen7184 Жыл бұрын
cảm ơn anh, video rất hay ạ
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn sự ủng hộ và tình cảm của em.
@ngocquangnguyen3846
@ngocquangnguyen3846 Ай бұрын
Cơ chế này chỉ áp dụng cho Postgresql hay cho cả MySQL, Oracle luôn ạ?
@Tony-pq4ng
@Tony-pq4ng 2 ай бұрын
có ai biết kênh youtube nào dạy web chất lượng như kênh này dạy database không ạ?
@cuongnd288
@cuongnd288 Жыл бұрын
Quá hay
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn anh em. Hãy like video để mình có thêm động lực nhé.
@cuongnd288
@cuongnd288 Жыл бұрын
Mong a chia sẻ về postgresql
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Okie anh em, anh em đăng ký kênh để nhận thông báo ngay khi có nội dung này nhé.
@toanmacvan9916
@toanmacvan9916 Жыл бұрын
Như vậy thì nếu xét về chiến thuật thực thi thì lấy 1 cột hay nhiều cột cũng như nhau(trường hợp select có cả cột không index và where), nhưng về mặt thời gian thì 1 cột sẽ nhanh hơn nhiêu.
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
đúng rồi em, việc này chiến lược thực thi như nhau đồng nghĩa với mức độ ảnh hưởng hiệu năng là tương đương. Còn thời gian trả ra bị ảnh hưởng bởi dung lượng dữ liệu + băng thông em nhé.
@toanmacvan9916
@toanmacvan9916 Жыл бұрын
@@tranquochuywecommit PM bên e chỉ quan thời gian thôi :( còn lại không care gì hết.... e chả biết phải giải thích sao hic
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
uh, hôm nào để anh chia sẻ về bản chất tối ưu cho bên em, rủ cả bác PM tham dự em nhé
@toanmacvan9916
@toanmacvan9916 Жыл бұрын
​@@tranquochuywecommitoke anh iu
@mikejinx4395
@mikejinx4395 Ай бұрын
Anh ơi nếu đối với bảng lưu trữ dạng cột như parquet thì sao ạ?
@datdao3104
@datdao3104 5 ай бұрын
good job man
@phanvantai2521
@phanvantai2521 Жыл бұрын
Cho em hỏi, các kiến thức ở trên anh chia sẻ nó có phụ thuộc vào DBMS không ạ, hay DBMS nào cũng sử dụng các kĩ thuật anh vừa chi sẻ.
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Kiến thức mình chia sẻ là bản chất nên đúng với các loại RDBMS (Oracle, PostgreSQL, SQL Server, MySQL...). Các database khác nhau chỉ sử dụng các thuật ngữ khác nhau về chiến lược thực thi thôi (Ví dụ: Seq Scan trong PostgreSQL thì giống như Full Table Scan trong Oracle). Cứ tự tin áp dụng đối với RDBMS của bạn nhé.
@phanvantai2521
@phanvantai2521 Жыл бұрын
@@tranquochuywecommit cảm ơn anh vì video hữu ích này
@ThinhNguyen-zu1jj
@ThinhNguyen-zu1jj 7 ай бұрын
Hay quá ạ, a ơi, bên mongo db nó có như thực hiện như bên sql không a?
@tranquochuywecommit
@tranquochuywecommit 7 ай бұрын
chiến lược thực thi là nguyên lý chung của các loại database anh em nhé
@binan6655
@binan6655 Жыл бұрын
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn tình cảm và sự ủng hộ của anh em nhé.
@thanhonguyen5268
@thanhonguyen5268 4 ай бұрын
scan row có phải là nó scan qua từng column name đúng ko a
@phungucanh3330
@phungucanh3330 Жыл бұрын
quá hay anh ạ
@NguyenTrung-yn8tr
@NguyenTrung-yn8tr 2 ай бұрын
kzbin.info/www/bejne/gnOwfGd5i5eJpac Đoạn này a nhầm đúng không ạ ? cost = end_time - start_time chứ. Như trong video là cost = 25.36-21.34 mới đúng anh ?
@numet2
@numet2 8 ай бұрын
anh cho e hỏi, thế thì table có bao nhiêu column cần thiết thì mình đánh index hết thì nó ảnh hưởng gì ko anh? Cảm ơn anh
@tranquochuywecommit
@tranquochuywecommit 8 ай бұрын
không làm như thế em ah, đánh index phải có chiến lược và nghệ thuât Nếu cứ có bao nhiêu cột mà đánh index hết luôn thì lại thành dở ngay, đặc biệt trong các hệ thống OLTP. Bản chất là phải chọn được số cột ít nhất có thể nhưng manh lại hiệu quả chiến lược thực thi tốt nhất.
@bathientran5357
@bathientran5357 Жыл бұрын
Bạn đấy là csdl dwh xem nó khác ji không🤗 mình nghỉ bạn đang test với csdl transaction
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
database nào thì cũng có chiến lược thực thi và hoạt động là như nhau anh em nhé. Tại đây mình đang không tính tới thời gian trả kết quả ra, mà chỉ tính hiệu năng phân tích trên server.
@hieubuict96
@hieubuict96 7 ай бұрын
Anh cho em hỏi tool nào hỗ trợ xem hiệu năng như thế với ạ. Em dùng explain sql nhưng không ra được các thông số query plan ạ
@tranquochuywecommit
@tranquochuywecommit 7 ай бұрын
tool thì anh em có thể dùng pgadmin4, dbeaver đều được Nếu dùng explain thì thêm explain analyze cũng được
@hieubuict96
@hieubuict96 7 ай бұрын
@@tranquochuywecommit vâng em cảm ơn a nhé
@vansinhbui7933
@vansinhbui7933 5 ай бұрын
@Ninda-pn5ov
@Ninda-pn5ov Жыл бұрын
Hay quá
@tranquochuywecommit
@tranquochuywecommit Жыл бұрын
Cảm ơn anh em đã ủng hộ nhé. Anh em đang làm việc với loại database nào thế?
Anh em DEV chưa từng tối ưu SQL nên xem video này #wecommit #tranquochuy
6:27
Trần Quốc Huy - Databases
Рет қаралды 9 М.
АЗАРТНИК 4 |СЕЗОН 3 Серия
30:50
Inter Production
Рет қаралды 935 М.
Database Indexing Explained (with PostgreSQL)
18:19
Hussein Nasser
Рет қаралды 308 М.
Thiết kế Database đáp ứng 400 triệu người tại Quora | System Design Wecommit
11:42
АЗАРТНИК 4 |СЕЗОН 3 Серия
30:50
Inter Production
Рет қаралды 935 М.