Где хранить заголовки таблицы?

Где хранить заголовки таблицы?

Данные в БД.
Краткие характеристики изделия хранятся в t1.
Второстепенные - в связанной с ней t2, причем их количество непостоянно.

Вывожу на страницу основные характеристики, а затем список второстепенных характеристик в виде таблицы.
Заголовки столбцов этой таблицы тоже непостоянны. У каждого изделия свои.

Возникает вопрос - где хранить заголовки?

Создать третью связанную таблицу специально для заголовков?
Сохранять их в t1?

В обоих случаях такое решение мне не нравится ввиду избыточности. То есть придется создавать максимальное количество столбцов, большинство из которых для каждого изделия будет пустыми.

Может есть стандартные решения?
Буду благодарен любому совету.
 

wrapper

Guest
можно так:

таблица 1 - characteristics (id, name, ...)
таблица 2 - products (id, name, ...)
таблица 3 - product_characteristic_values(fk_product, fk_characteristic, value, ...)
 
Да, наверное, только так и надо

Спасибо

Но вот не соображу, как тогда построить запрос, чтобы вывести сначала заголовки, а затем сами строки...
 

Serguitar

Новичок->продвинутый
А ты построй запрос так, чтобы он попросту отметал пустые поля таблмцы, а сортировку и порядок вывода результатов запроса сделать несложно.
 
To:Serguitar

А пустых полей нет...
Не причем они. Просто при объединнии трех таблиц будет выведено:
Изделие Заголовок1 Характеристика
Изделие Заголовок1 Характеристика
Изделие Заголовок2 Характеристика
Изделие Заголовок2 Характеристика

Как мне вывести в цикле:
Заголовок1 Заголовок2
Характеристика Характеристика
Характеристика Характеристика

Может это и просто. Да не делал я такого.
 
Сверху