Перекрёстный запрос sql php
Можете подсказать, пожалуйста, как мне вывести на странице в таблицу не id, которое в базе, а само значения, которое связано с другой таблицей. К примеру, сейчас у меня вывод выглядит вот так:
№ Название датчика Значение Тип значения Дата
1 1 1 1 2020-05-01 12:00:05
3 1 5 2 2020-05-01 00:00:00
4 1 555 3 2020-05-21 00:00:00
8 1 2 1 2020-05-02 23:00:00
9 1 3 1 2020-05-05 00:04:00
10 1 6 1 2020-05-14 06:00:00
И запрос этот выглядит:
SELECT
`id_data`,
`data_id_model`,
`data_value`,
`data_id_type_value`,
`data_date`
FROM `data_indicators`
WHERE data_id_station = '".$_GET['id']."'
Можете подсказать, как мне вывести правильно чтобы были данные, а не id?
Ответы (1 шт):
Автор решения: Alex R.
→ Ссылка
Необходимо связать таблицы data_indicators, models (модели датчиков), type_value (имена парметров) по ключевым полям, они имеют пересечение в названии. В секцию FROM добавляются имена таблиц, в WHERE условия связи, после этого в SELECT можно использовать столбцы из добавленых таблиц.
SELECT
d.id_data,
m.model_name,
d.data_value,
t.type_value_name,
d.data_date
FROM type_value t,
models m,
data_indicators d
WHERE d.data_id_station = '".$_GET['id']"'
AND m.id_model = d.data_id_model
AND t.id_type_value = d.data_id_type_value
Добавил еще имя параметра, хорошо бы еще вывести единицу измерения type_value.type_value_unit
