Một người nào đó đã gửi cho tôi truy vấn SQL trong đó khoản GROUP BY
bao gồm tuyên bố: GROUP BY 1
.Điều khoản SQL "GROUP BY 1" có nghĩa là gì?
Đây phải là lỗi chính tả? Không có cột nào được đưa ra bí danh 1. Điều này có ý nghĩa gì? Tôi có quyền cho rằng đây phải là lỗi đánh máy không?
Đó không phải là lỗi đánh máy, cột đầu tiên của tập hợp kết quả của bạn – Lamak
Lưu ý rằng cú pháp này không thể di chuyển được. Nó sẽ hoạt động khác nhau trên cơ sở dữ liệu khác với mysql. Trong Oracle, ví dụ, nó được coi là một hằng số. –
@RussellReed Có. Thật không may (kể từ khi sử dụng một bí danh đôi khi rất hữu ích) ansi sql không cho phép nhóm theo thứ tự cột. Lý do là nhóm xảy ra trước khi chiếu. Nhưng sau đó .. những gì khi chúng tôi có nhóm biểu thức với hàng chục dòng .. chúng tôi kết thúc với .. * mutiple * của hàng chục dòng trong báo cáo sql cuối cùng. – javadba