Форум программистов, компьютерный форум CyberForum.ru

PostgreSQL

Войти
Регистрация
Восстановить пароль
 
mstdmstd
0 / 0 / 0
Регистрация: 21.02.2010
Сообщений: 106
#1

Функция с возвратом рейтинга категорий - PostgreSQL

03.01.2017, 19:51. Просмотров 172. Ответов 1
Метки нет (Все метки)

Всем привет,

В postgresql, 9.4.10
функция с возвратом рейтинга категорий
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
RETURNS TABLE( category_name CHARACTER VARYING, category_slug CHARACTER VARYING, category_id SMALLINT, products_count BIGINT, rating DECIMAL(5,2)  )
 LANGUAGE SQL
AS $function$
 
SELECT c.name AS category_name, c.slug AS category_slug, c.id AS category_id,
  COUNT(p.id) AS products_count,
  avg(  CAST( p.rating_summary / NULLIF(p.rating_count,0)  AS DECIMAL(5,2) )  ) AS rating
  FROM pd_product AS p JOIN pd_product_category AS pc ON pc.product_id = p.id JOIN pd_category AS c ON c.id = pc.category_id
 
  GROUP BY c.id
 
  ORDER BY rating DESC, products_count ASC, c.name ASC
 
 
  LIMIT p_limit ;
 
$function$
в поле rating возвращает десятичное значение до 10 символов после точки, а не 2 как я указал.

А как правильно ?

Спасибо!
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2017, 19:51     Функция с возвратом рейтинга категорий
Посмотрите здесь:

PostgreSQL Функция с подвывертом
Функция nullvalue PostgreSQL
Функция с возвратом указателя и возвратом ссылки C++
PostgreSQL Функция выполняется с ошибкой
Функция поиска PostgreSQL
C# Функция с возвратом по имени
Функция с выборочным возвратом значения C (СИ)

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
grgdvo
518 / 459 / 126
Регистрация: 02.09.2012
Сообщений: 1,345
04.01.2017, 15:51     Функция с возвратом рейтинга категорий #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Попробуйте сначала среднее посчитать, потом от него cast сделать.
Yandex
Объявления
04.01.2017, 15:51     Функция с возвратом рейтинга категорий
Ответ Создать тему
Опции темы

Текущее время: 14:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru