Vâng, "tốt hơn" là chủ quan. Có một số phong cách ở đây. Nhưng tôi sẽ giải quyết các câu hỏi của bạn trực tiếp.
- Cả hai đều hoạt động như nhau
- Cả hai đều tuân thủ ANSI.
-
Vấn đề với ví dụ đầu tiên là
-
rất dễ vô tình tạo ra sản phẩm chéo (vì dễ dàng bỏ qua các tiêu chí kết hợp hơn)
-
việc gỡ lỗi các tiêu chí tham gia cũng trở nên khó khăn khi bạn thêm ngày càng nhiều bảng vào tham gia
-
vì cú pháp nối ngoài kiểu cũ (* =) đã không còn được dùng nữa (từ lâu đã được ghi nhận là trả về kết quả không chính xác), khi bạn cần giới thiệu các phép nối ngoài, bạn cần kết hợp các phép nối kiểu mới và kiểu cũ ... tại sao lại khuyến khích không nhất quán?
-
mặc dù nó không chính xác là cơ quan có thẩm quyền về các phương pháp hay nhất, nhưng Microsoft khuyến nghị cú pháp INNER / OUTER JOIN rõ ràng
-
với phương pháp sau:
- bạn đang sử dụng cú pháp nối nhất quán bất kể bên trong / bên ngoài
- khó khăn hơn (không phải là không thể) nếu vô tình lấy được sản phẩm chéo
- tách biệt tiêu chí kết hợp khỏi tiêu chí bộ lọc có thể giúp gỡ lỗi dễ dàng hơn
-
Tôi đã viết bài đăng mà Kevin đã chỉ đến.