Tôi có một truy vấn nhiều bảng, tương tự như (phiên bản đơn giản) nàyTrong mysql, bạn có thể chia một bí danh, bởi một bí danh khác không?
SELECT columns, count(table2.rev_id) As rev_count, sum(table2.rev_rating) As sum_rev_rating
FROM table1
LEFT JOIN table2
ON table1.dom_id = table2.rev_domain_from
WHERE dom_lastreview != 0 AND rev_status = 1
GROUP BY dom_url
ORDER BY sum_rev_rating/rev_count DESC
Vấn đề là trong mệnh đề ORDER BY. Điều này gây ra một lỗi mysql để hiển thị, mà là như sau:
Reference 'sum_ rev_ giá' không được hỗ trợ (tham chiếu đến chức năng nhóm)
Tôi đã thử thực hiện sum_rev_rating/rev_count AS avg_rating, nhưng tôi nhận được kết quả tương tự. Tôi đoán bạn không thể làm một bí danh, từ một bí danh. Phương pháp của bạn hoạt động hoàn hảo! –
Bạn không thể sử dụng bí danh trong các biểu thức khác trong danh sách chọn. Bạn chỉ có thể sử dụng bí danh trong các mệnh đề GROUP BY, HAVING và ORDER BY. –