Các bác có query sql kiểu này không?

Vẫn ưu tiên dùng ORM, nào k dùng dc nữa thì xài raw sql, thời đại nào rồi mà còn đâm đầu vào viết sql :cautious:. H máy tính mạnh lắm rồi, nào có perf rồi tune chứ ai rảnh đâu viết raw sql :censored:
 
Ví dụ em chỉ cần lấy ra 1 vài cột của 1 record, nhưng em thường lười viết hàm chung lấy toàn bộ (select * ) cột đó ra rồi dùng đi dùng lại trong toàn ứng dụng

Mình nghĩ việc này không ảnh hưởng performance mấy, anh em nghĩ sao?
Ở team em, thằng nào select * mà ko nói được lý do là dính tiền phạt ngay.
Việc select * chắc chắn sẽ tốn memory hơn select đúng lượng data cần thiết.
Nếu hệ thống 1 vài chục người thì sẽ ko sao, thím cứ tưởng tượng 1 hệ thống cả triệu người dùng, thằng nào cũng select * thì server nó toang ngay.
 
Nếu lấy theo id, tức lúc nào cũng ra một dòng thì ok. Hoặc master data, ít cột thì được. Chứ data nhiều, column nhiều thì không nên.

Sent from Google Pixel 2 XL using vozFApp
 
Vẫn ưu tiên dùng ORM, nào k dùng dc nữa thì xài raw sql, thời đại nào rồi mà còn đâm đầu vào viết sql :cautious:. H máy tính mạnh lắm rồi, nào có perf rồi tune chứ ai rảnh đâu viết raw sql :censored:
ORM chỉ được cái tiện dụng, mì ăn liền thôi.
Về cơ bản, khi dùng ORM thím phải thực sự hiểu nó chạy như thế nào thì mới dùng tốt được.
Chỗ em ưu tiên dùng raw sql, thím nào bảo khổ dâm thì em cũng chịu nhưng product mà kiến trúc được xây dựng 20 năm rồi, giờ vẫn chạy phà phà, ko có dấu hiệu chậm đi theo năm tháng.
 
Ở team em, thằng nào select * mà ko nói được lý do là dính tiền phạt ngay.
Việc select * chắc chắn sẽ tốn memory hơn select đúng lượng data cần thiết.
Nếu hệ thống 1 vài chục người thì sẽ ko sao, thím cứ tưởng tượng 1 hệ thống cả triệu người dùng, thằng nào cũng select * thì server nó toang ngay.
xạo ke
 
data ít thì ko sao, nhưng nên tập thói quen select cột cần thiết thôi
có 2 cái lợi:
  • tối ưu performance
  • tường minh, người sau nhìn vô biết đang lấy cột nào
 
ORM chỉ được cái tiện dụng, mì ăn liền thôi.
Về cơ bản, khi dùng ORM thím phải thực sự hiểu nó chạy như thế nào thì mới dùng tốt được.
Chỗ em ưu tiên dùng raw sql, thím nào bảo khổ dâm thì em cũng chịu nhưng product mà kiến trúc được xây dựng 20 năm rồi, giờ vẫn chạy phà phà, ko có dấu hiệu chậm đi theo năm tháng.
thế viết store xong orm gọi ra vẫn lợi hơn chứ nhỉ
trong BE thì code đẹp, dev cũng dễ hiểu
 
vcl chắc ông chưa động đến mấy hệ thống có cả hơn 200 cols, mà nhiều người dùng nhỉ, mỗi lần ai request lại select * là một lần con server muốn tắc thở
 
Sửa lần cuối:
thế viết store xong orm gọi ra vẫn lợi hơn chứ nhỉ
trong BE thì code đẹp, dev cũng dễ hiểu
store thì sau này chuyển đổi hệ quản trị lại mệt. bọn dev thích nhất là kiểm soát được mọi thứ nên nó sẽ chọn phương án đưa tất cả code lên be luôn, còn orm thì dùng cho web nhỏ chứ web to kiểu gì cũng phải raw querry hoặc tự chế 1 cái orm riêng, vì orm nó gen code rất lòng vòng
 
Hỏi ngu chứ database có 100 cột, cần lấy 80 cột thôi thì làm sao, viết tên từng cái ra à
 
gặp cái table mấy trăm field thì ăn cám à, select cái nào cần thôi

Từ lúc đi làm tới giờ, chưa gặp cái table nào quá 100 field cả, đứa nào thiết kế cái DB mà table cõng cả mớ field vậy chắc là khá :shame:

Việc liệt kê ra cụ thể có tốn bao nhiêu thời gian đâu nhỉ, lại rõ ràng hơn mà?
 
Từ lúc đi làm tới giờ, chưa gặp cái table nào quá 100 field cả, đứa nào thiết kế cái DB mà table cõng cả mớ field vậy chắc là khá :shame:

Việc liệt kê ra cụ thể có tốn bao nhiêu thời gian đâu nhỉ, lại rõ ràng hơn mà?
do fen chưa gặp thôi, db của bọn ngành sản xuất, thông tin kỹ thuật ko cũng 2 300 field rồi
 

Thống kê chủ đề

Ngày tạo
Donald Trump USA_No1,
Người trả lời cuối
d.n.c.m,
Trả lời
109
Lượt xem
12.822
Quay lại
Lên đầu trang