Рассмотрим следующий Postgresql таблицы базы данных:Как вы определяете среднее значение столбца в Postgresql?
id | book_id | author_id
---------------------------
1 | 1 | 1
2 | 2 | 1
3 | 3 | 2
4 | 4 | 2
5 | 5 | 2
6 | 6 | 3
7 | 7 | 2
В этом примере автор 1 написал 2 книги, автор 2 написал 4 книги, и автор 3 написал 1 книгу. Как определить среднее число книг, написанных автором с использованием SQL? Другими словами, я пытаюсь получить: «Автор написал в среднем 2,3 книги».
До сих пор попытки с AVG и COUNT подвели меня. Есть предположения?
Я обновил таблицу, включив в нее 4-ю книгу. :) – Huuuze
Вам не нужен подзапрос. Посмотрите на мой ответ. –
Какой дурацкий способ создания данных в SQLFiddle! Вы можете использовать многозначное предложение VALUES, чтобы сделать это гораздо менее болезненно; см. http://sqlfiddle.com/#!15/9635d/1 –