я имею ниже запрос, который я использую, чтобы обновить гендерный столбец, если его набор в Мале, а затем обновить, как M, для женщин, обновление до FПравильное использование Sql сазе
Трассы заявление штраф первый раз.
UPDATE [People].[People]
SET GENDER = CASE WHEN GENDER = 'Male' THEN 'M'
WHEN GENDER = 'Female' THEN 'F' END WHERE Id=40
мой вопрос, если пол уже «M», то когда оператор выполняется снова, «M» устанавливается равным NULL
я мог бы сделать ниже, но это, кажется, немного a fudge
UPDATE [People].[People]
SET GENDER = CASE WHEN GENDER = 'Male' THEN 'M'
WHEN GENDER = 'Female' THEN 'F'
WHEN GENDER = 'M' THEN 'M'
WHEN GENDER = 'F' THEN 'F'
END WHERE Id=40
Может кто-нибудь посоветуете?
спасибо
Конечно. Если вы не хотите редактировать все строки, вы также можете добавить предложение WHERE к вашему Update, чтобы касаться только строк, которые являются «Male» или «Female» (или не «M» или «F»), для того же результата , –