Member 13932549 Ответов: 1

Обновите все строки со значением первой строки


eid    empname    eaddress
----   --------   ---------
1      venu       hyd
2      ravi       mad
3      kiran      ban
4      raju       hyd

Если firstrow в столбце empname-venu, то он должен изменить все значения столбцов empname на 'venu', как показано ниже в таблице


eid    empname    eaddress
----   --------   ---------
1      venu       hyd
2      venu       mad
3      venu       ban
4      venu       hyd

Если firstrow в столбце empname равен NULL, то он должен принять значение 2-й строки и изменить все значения столбцов empname на значение 2-й строки, то есть "Рави", как показано ниже в таблице




eid    empname    eaddress
----   --------   ---------
1      null       hyd
2      ravi       mad
3      kiran      ban
4      raju       hyd


ПРИМЕР



eid    empname    eaddress
----   --------   ---------
1      ravi       hyd
2      ravi       mad
3      ravi       ban
4      ravi       hyd


Что я уже пробовал:

Я попробовал использовать обновление SQL Server с запросами case statements, но ничего не получилось.Может ли кто-нибудь помочь мне с этим?

CHill60

Опубликуйте код, который вы пробовали, но он не сработал, и мы постараемся помочь вам его исправить

1 Ответов

Рейтинг:
9

OriginalGriff

Это звучит довольно странно, но.....

UPDATE MyTable SET empname = 
   (SELECT TOP 1 empname 
    FROM MyTable
    WHERE empname IS NOT NULL
    ORDER BY eid ASC)


Member 13932549

Большое вам спасибо, OriginalGriff .

OriginalGriff

Всегда пожалуйста!