У меня есть вопрос по SQL, который для некоторых может быть основным, но сбивает меня с толку.
Вот пример имен столбцов для таблицы «Человек»: PersonalID, FirstName, LastName, Car, HairColour, FavDrink, FavFood
Допустим, я ввожу строку:
121312, Райна, Питерсон, BMW123d, Коричневый, НУЛЬ, НУЛЬ
Теперь я хочу обновить значения для этого человека, но только если новое значение не равно нулю, Обновить:
121312, Райна, Питерсон, NULL, Блондинка, Фанта, NULL
Новая строка должна быть:
121312, Райна, Питерсон, BMW123d, Блондинка, Фанта, NULL
Итак, я подумал о чем-то вроде:
Обновить Person (PersonalID, FirstName, LastName, Car, HairColour, FavDrink, FavFood) установите Car = @Car (где @Car не равно нулю), HairColour = @HairColour (где @HairColour ...) ... и т. Д.
Меня беспокоит только то, что я не могу сгруппировать все условия в конце запроса, потому что для этого потребуется, чтобы все значения имели одно и то же условие. Разве я не могу сделать что-то вроде «Обновить цвет волос», если @HairColour не равно нулю?