Я пытаюсь создать SQL-запрос для подсчета количества вхождений динамического значения в одном столбце, но затем разделить это число на количество в другом столбце.
Если таблица I 'm получение данных выглядит примерно так:
id | Team | Period |
____________________
1 | A | 1 |
2 | B | 1 |
3 | B | 1 |
4 | A | 1 |
5 | E | 2 |
6 | D | 3 |
7 | A | 3 |
8 | A | 3 |
9 | B | 4 |
10 | A | 4 |
11 | C | 4 |
etc...
Я хочу получить список того, сколько раз каждая команда появляется за период, например, так.
team | period | count |
_________________________
A | 1 | 2 |
B | 1 | 2 |
C | 1 | 0 |
D | 1 | 0 |
E | 1 | 0 |
A | 2 | 0 |
B | 2 | 0 |
C | 2 | 0 |
D | 2 | 0 |
E | 2 | 0 |
A | 3 | 2 |
Это будет использоваться встраницу PHP, чтобы затем создать массив ассоциаций и распечатать данные для целей отчетности.
Я ранее использовал такие вещи, как
SELECT sum(case when somecolumn = 'blah' then 1 else 0 end) as blah_count
Но я не могу сделать это здесь, потому что вВ будущем имена команд могут измениться на неизвестное в настоящее время значение, поэтому я не могу использовать имена в запросе. (и нет, мне не скажут об этом, чтобы я мог изменить запрос.) Поэтому мне нужен запрос, в котором он и подсчитывает количество вхождений в столбце команды, и разбивает их по периодам. Период всегда будет числом от 1 до 13.