Мне нужно группировать столбцы пользователей в соответствии с диапазонами заданного года. Это примерные диапазоны года (1980-1989-1990-1999,2000-2009) И тогда мне нужно присоединиться, чтобы подсчитать результаты из другой таблицы. Я создал базу данных «user_relations», и я создал две таблицы, чтобы показать свою проблему.SQL Как группировать столбец для заданного диапазона и присоединяться к другой таблице для подсчета связанных строк с первым столбцом
+--------------------------+
| Tables_in_user_relations |
+--------------------------+
| user_answers |
| users |
+--------------------------+
2 rows in set (0.00 sec)
И это пользователи таблица
+----+----------+-----------+
| id | username | birthyear |
+----+----------+-----------+
| 1 | user1 | 1980 |
| 2 | user2 | 1990 |
| 3 | user3 | 2000 |
| 4 | user4 | 1983 |
+----+----------+-----------+
4 rows in set (0.00 sec)
и это user_answers стол. Мне просто нужно подсчитывать user_answers в соответствии с пользователями, которые сгруппированы по диапазону дат.
+----+---------+-----------+
| id | user_id | option_id |
+----+---------+-----------+
| 1 | 1 | 1 |
| 2 | 2 | 1 |
| 3 | 3 | 2 |
| 4 | 4 | 1 |
+----+---------+-----------+
4 rows in set (0.00 sec)
В соответствии с этими таблицами мне нужно получить результат примерно так.
+------------------------------------------------
| option_id | 1980-1989 | 1990-1999 | 2000-2009 |
+------------------------------------------------
| 1 | 2 | 1 | 0 |
| 2 | 0 | 0 | 1 |
| 3 | 0 | 0 | 0 |
+------------------------------------------------
Примечание: Мне нужно сначала использовать таблицу пользователей. Я знаю, что для получения этих результатов может быть много вариантов. Но я должен получить результат таким образом. Это просто пример.
Я надеюсь, что кто-то там помогает мне. Спасибо.
Является ли это MySQL или PostgreSQL? – Anand
это postgresql –