Trong một trong các truy vấn của tôi, có vẻ như hàm AVG
trả về một int.SQL AVG trả về số int
select ..., AVG(e.employee_level)avg_level
Làm cách nào để lấy lại giá trị dấu phẩy động? Tôi đã thử đúc nó nhưng tất cả các hàng của tôi cho avg_level
vẫn là số nguyên.
Hành vi của hàm AVG() trên các số nguyên không được xác định trong tiêu chuẩn ANSI. Một số cơ sở dữ liệu trả về một số nguyên; cơ sở dữ liệu khác trả về một phao. Để có được một float bạn có thể sử dụng một diễn viên/chuyển đổi rõ ràng. Hoặc, những gì tôi làm chỉ đơn giản là nhân với 1.0. –