Структура MySQL Table для создания отчетов - PullRequest
0 голосов
/ 28 ноября 2008

В продолжение моего вчерашнего вопроса ....

Разработка таблиц MySQL для вопросника

Вчера днем ​​я сел со своим боссом, чтобы разобраться, как я предлагал проектировать базу данных. Тем не менее, теперь я запутался как никогда.

Он уже много лет пользуется Access и спрашивает, смогу ли я составить отчеты, используя только один столбец для ответа (ENUM). Исходя из своего опыта работы с Access, он считает, что каждый возможный ответ (т. Е. Очень удовлетворенный, достаточно удовлетворенный, довольно неудовлетворенный, очень неудовлетворенный) должен иметь свой собственный столбец и числовое значение (т.е.

Это сделано для того, чтобы база данных могла создавать отчеты, показывающие среднюю удовлетворенность по стране и по каждому розничному продавцу в отдельности.

Я был бы очень признателен, если я действительно не хочу ошибиться?

Спасибо

Ответы [ 3 ]

1 голос
/ 28 ноября 2008

JD прав, учитывая необходимость усреднения баллов, столбец INT - это путь.

Что касается вашего босса, он не прав. 8 ^) Возможно, лучший способ убедить его в том, чтобы продемонстрировать, как вы будете генерировать отчеты с тем дизайном, о котором мы говорим: написать небольшой скрипт для генерации поддельных данных (т. Е. Просто случайным образом генерировать много значений диапазон 1..4), а затем используйте некоторый SQL (у JD есть несколько хороших отправных точек) для генерации некоторых отчетов Q & D.

1 голос
/ 28 ноября 2008

В этом случае я бы не стал перечислять, я бы выбрал столбец «Оценка». Таким образом, столбцы могут быть:

userid, questionid, score
1,1,4
1,2,4
1,3,3
2,1,1
2,2,4
...

1 очень неудовлетворен, а 4 очень доволен.

Тогда запрос типа:

select 25*avg(score) from Blah

даст вам ваш общий процент.

select 25*avg(score), questionid from Blah group by questionid

даст вам% за вопрос.

Доступ на самом деле не база данных, поэтому не слушайте своего босса;)

0 голосов
/ 28 ноября 2008

На всякий случай, если у кого-то еще есть эта проблема; Я также нашел учебник, который весьма полезен. http://www.roughguidetophp.com/generating-reports-using-mysqls-aggregate-functions-sum-max-min-and-more/

В нем разъясняется, что сказали Джей-Ди и Джинхек

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...