У меня есть основная таблица данных и две таблицы, связанные с ней.Таблица данных содержит в строках информацию о странах с соответствующими годами и значениями, если они существуют.Это что-то вроде этого
variable_code | country_code | year_code | value
1 291 73 28
1 291 75 22
1 443 74 12
Код года обозначает что-то вроде 1990, 1991, ...
Теперь я хотел бы иметь массив таблиц / PHP, такой как
country_code | 1990 | 1991 | 1992
291 73 x 28
443 x 12 x
SQL для поиска для одной переменной в виде
country_code | year_code | value
Afghanistan 1990 28
Afghanistan 1992 28
Albania 1991 28
выглядит следующим образом:
SELECT
country.country_name,
time_id.year_start,
data.data_value
FROM
data JOIN time_id ON data.time_ID = time_id.time_id
JOIN country ON data.country_id = country.country_id
WHERE
data.Indicator_ID = '314'
ORDER BY
country.country_name,
time_id.year_start
Доступное количество лет изменяется для каждогоиз возможных ~ 1000 переменных.
Я не могу создать ВИД, который мог бы помочь в этом процессе (не имеют привилегий).
Если не так легко создать в MySQL, может, лучше сделать это в PHP?Но это не похоже ни на простую процедуру.Сначала запрос «времени» для получения всех лет, а затем создание другого запроса с каждым годом ...?
Спасибо за любые подсказки ...
(Посмотрел здесь и здесь и ... но это не одно и то же.)