Мне нужно отслеживать разные даты (динамические). Таким образом, для конкретной задачи у вас может быть Х число дат для отслеживания (например, дата собрания DDR1, дата собрания DDR2, срок выполнения и т. Д.).
Моя стратегия состояла в том, чтобы создать одну таблицу (DateTypeID, DateDescription), в которой будет храниться описание каждой даты. Тогда я мог бы создать основную таблицу (ID, TaskDescription, DateTypeID). Таким образом, все даты будут в одном столбце, и вы сможете узнать, что эта дата представляет, посмотрев на TypeID. Проблема заключается в отображении его в сетке. Я знаю, что должен использовать перекрестный запрос, но не могу заставить его работать. Например, я использую оператор Case в SQL Server 2000, чтобы повернуть таблицу так, чтобы каждое имя столбца было именем типа даты. Если у нас есть следующие таблицы:
Таблица DateType
DateTypeID | DateDescription
1 | DDR1
2 | DDR2
3 | DueDate
Таблица задач
ID | TaskDescription
1 | Create Design
2 | Submit Paperwork
Таблица Tasks_DateType
TasksID | DateTypeID | Дата
1 | 1 | 09/09/2009
1 | 2 | 10/10/2009
2 | 1 | 11/11/2009
2 | 3 | 12/12/2009
РЕЗУЛЬТАТ ДОЛЖЕН БЫТЬ:
TaskDescription | DDr1 | DDR2 | DueDate
Create Design |09/09/2009 | 10/10/2009 | null
Submit Paperwork |11/11/2009 | null | 12/12/2009
Если кто-нибудь знает, как я могу исследовать это, я ценю это. Причина, по которой я делаю это вместо создания столбца для каждой даты, связана с возможностью позволить пользователю в будущем добавлять столько дат, сколько он хочет, без необходимости вручную добавлять столбцы в таблицу и редактировать HTML-код. Это также позволяет использовать простой код для сравнения дат или отображения предстоящих задач по их типу (например, «Дата создания DDR1 для дизайна»). Если кто-то может указать мне правильное направление, я ценю это.