вставить дату из соседней записи - PullRequest
1 голос
/ 11 декабря 2011

В таблице есть столбцы для issue_date, part_num и date_received.

Если issue_date равен null, я хочу выбрать issue_date из part_num + 1 (следующий номер детали) и вставить его в столбец issue_date детали без даты выпуска.

part_num является последовательным.

Какой SQL-оператор выберет и вставит соответствующую дату выпуска?

Заранее благодарю за любую помощь.

Разобрался с небольшим заявлением о самостоятельном присоединении .. спасибо, что удалите, если хотите !!

1 Ответ

2 голосов
/ 11 декабря 2011

Попробуйте это:

update t
set t.issue_date = (select issue_date 
                       from t t1 
                      where t1.part_num = t.part_num+1)
where t.issue_date is null

Но, если следующий номер детали также не имеет Issue_Date, это будет равным нулю в Issue_Date. Для решения этой проблемы вы можете изменить запрос на этот (если он подходит для вашего приложения):

update t
set t.issue_date = (select min(issue_date)
                       from t t1 
                      where t1.part_num > t.part_num)
where t.issue_date is null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...