Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Процентное соотношение / 7 сообщений из 7, страница 1 из 1
09.08.2020, 16:05
    #39987947
Allorn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
Есть таблица состоящая из ID поездки и Марки машины. Нужно через подзапрос найти процентное соотношение поездок по типам машин от общего кол-ва поездок.
select
car_name,
count(car_id) / count((select count(car_id) from travels))
from travels
group by car_name

Возвращает результат единицу по всем машинам. Понимаю, что подзапрос неправильный, но не могу понять где именно.
...
Рейтинг: 0 / 0
09.08.2020, 17:34
    #39987953
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
Allorn,

Приведите один из count-ов к типу numeric.
...
Рейтинг: 0 / 0
09.08.2020, 17:49
    #39987955
Allorn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
select
car_name,
cast(count(car_id) as numeric) / count((select count(car_id) from travels))
from travels
group by car_name

Все так же дает единицу
...
Рейтинг: 0 / 0
09.08.2020, 18:50
    #39987965
Allorn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
Вот так оно работает. Но как 25000 получить подзапросом, я не понимаю :(
select
car_name,
count(car_id) :: numeric/25000 * 100
from travels
group by car_name
...
Рейтинг: 0 / 0
09.08.2020, 21:04
    #39987977
flashgun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
Код: plsql
1.
2.
3.
4.
5.
6.
select 
    car_name,
    count(*)*100./(select count(*) from travels) 
from 
    travels 
group by 1;



Оно?
...
Рейтинг: 0 / 0
10.08.2020, 10:40
    #39988075
Allorn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
Да, благодарю :)
...
Рейтинг: 0 / 0
11.08.2020, 21:40
    #39988776
Troglodit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Процентное соотношение
flashgun,

А зачем делать
Код: sql
1.
select count(*) from travels


Разве оконная функция не будет работать?
Код: sql
1.
count(*) OVER()
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Процентное соотношение / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]