Если предположить, что столбцы total_sales и total_customers равны integer
, выражение total_sales / total_orders
дает integer
.
Вам нужно разыграть хотя бы одного из них до , вы можете округлить их, например: total_sales / total_orders::numeric
, чтобы получить десятичный результат от деления:
round(total_sales / total_orders::numeric, 2) as SPC,
round(total_sales / total_orders::numeric, 2) as AOV
Пример:
create table data
(
total_sales integer,
total_customers integer,
total_orders integer
);
insert into data values (97, 12, 7), (5000, 20, 30);
select total_sales / total_orders as int_result,
total_sales / total_orders::numeric as numeric_result,
round(total_sales / total_orders::numeric, 2) as SPC,
round(total_sales / total_orders::numeric, 2) as AOV
from data;
возвращает:
int_result | numeric_result | spc | aov
-----------+----------------------+--------+-------
13 | 13.8571428571428571 | 13.86 | 13.86
166 | 166.6666666666666667 | 166.67 | 166.67