Реализация, ЕСЛИ условие в T-SQL ОБНОВЛЯЕТ оператор

Используя T-SQL, я хотел бы выполнить оператор UPDATE, который УСТАНОВИТ столбцы, только если соответствующие переменные определяются.

Вот простой pseudo-tsql пример того, что я пытаюсь выполнить:


--Declaring vars
@ID int,
@Name nvarchar(20),
@Password nvarchar(10)

--Run the update
UPDATE User
SET
IF LEN(@NAME) > 0
  Name = @Name,
IF LEN(@Password) > 0
  Password = @Password

Из того, что я могу сказать путем чтения, как, ЕСЛИ условия работают в T-SQL, для выполнения того же результата как вышеупомянутый псевдо код, я должен был бы создать оператор UPDATE для каждого, ЕСЛИ условие - который является тем, что я стараюсь не иметь необходимость сделать.

Действительно ли возможно динамично УСТАНОВИТЬ поля/столбцы на основе условия с помощью только одного оператора UPDATE? - Если так, как?

19
задан gbn 15 July 2010 в 06:19
поделиться