Невозможно заполнить столбец NULL фактическими значениями, связав правильные значения в справочной таблице. - PullRequest
0 голосов
/ 05 июня 2010

У меня есть таблица с отдельными столбцами для месяцев, дней и столбец varchar с шагом 6 часов для каждого дня («12:00», «6:00», «12:00», «6:00»). Также есть столбец, в котором должны быть рассчитаны числовые значения для каждого из этих 6-часовых приращений. Эти рассчитанные значения взяты из некоторой справочной таблицы. Эта справочная таблица содержит значения для каждого дня в течение нескольких месяцев с разбивкой по часам, где каждый час имеет свой собственный столбец. Итак, в основном, я должен добавить значения для каждого 6-часового приращения. Я понятия не имею, как связать правильные значения в справочной таблице с этими 6-часовыми приращениями.

Я буду очень признателен за любую помощь в этом.

1 Ответ

1 голос
/ 05 июня 2010

Вы можете попробовать что-то вроде:

UPDATE main_table, reference_table
  SET main_table.calc_column = 
    (CASE WHEN main_table.incr = "6AM" THEN reference_table.col1+reference_table.col2+...
          WHEN main_table.incr = "12AM" THEN reference_table.col7+reference_table.col8+...
          WHEN main_table.incr = "6PM" THEN reference_table.col13+reference_table.col14+...
          ELSE reference_table.col19+reference_table.col20+...
     END)
  WHERE main_table.month = reference_table.month
    AND main_table.day = reference_table.day
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...