Я пишу сценарий отчетности, где поля отчетов не всегда фиксированы.Администратор может добавлять / удалять / изменять поля.Для этого я создал следующие таблицы:
отчеты
id user_id csp_id date
1 1 1 2018-10-09
2 1 1 2018-10-10
3 2 2 2018-10-09
4 2 2 2018-10-10
reports_meta_fields
meta_id display_name type default_value
csp_address CSP address text
csp_name CSP Name text
reports_meta_values
report_id user_id meta_id meta_value
1 1 csp_address Shivmandir
1 1 csp_name Shiv CSP
2 1 csp_address Matigara
2 1 csp_name Mat CSP
3 2 csp_address Darjeeling
3 2 csp_name Dar CSP
4 2 csp_address Gangtok
4 2 csp_name Gang CSP
Вот так нужно отображать дату во внешнем интерфейсе, мне также нужна сортировка по дате, csp_name и т. Д.
id user_id csp_id date csp_name csp_adress
1 1 1 2018-10-09 Shiv CSP Shivmandir
2 1 1 2018-10-10 Mat CSP Matigara
3 2 2 2018-10-09 Dar CSP Darjeeling
4 2 2 2018-10-10 Gang CSP Gangtok
Я пробовал этот sql,но это не то, что я ищу
SELECT reports.*, reports_meta_values.meta_id, reports_meta_values.meta_value FROM reports
INNER JOIN reports_meta_values WHERE reports.id = reports_meta_values.report_id
id user_id csp_id date meta_id meta_value
1 1 1 2018-10-09 csp_address Shivmandir
1 1 1 2018-10-09 csp_name Shiv CSP
2 1 1 2018-10-10 csp_address Matigara
2 1 1 2018-10-10 csp_name Mat CSP
3 2 2 2018-10-09 csp_address Darjeeling
3 2 2 2018-10-09 csp_name Dar CSP
4 2 2 2018-10-09 csp_address Gangtok
4 2 2 2018-10-09 csp_name Gang CSP
Я ищу предложение в mysql или в php, как решить эту проблему.Спасибо!