Рассмотрение таблицы «Студент» как представления, содержащего строки StudentId, First Name, Last Name и EmailId (StudentId - это автоматически сгенерированное значение идентификатора, а EmailId является уникальным для всех записей).
Предполагая исходную таблицу выглядит так с данными:
I have a set of input values where the EmailIds need to be compared against the existing records and if present should update the value for First Name and Last Name else Insert a new record.What is the best way to accomplish this?
I am using DapperExtensions in the application so am ending up looping through the input List and calling the query. The input is a list which looks like something like this:
[{FirstName: Adam1, LastName: Robert1, EmailId: adm.robert@gmail.com},
{FirstName: Joanne, LastName: Williams, EmailId: joanne.williams@gmail.com}]
The current query that I came up for updating with only a single value is something like this:
IF EXISTS (SELECT * FROM Student WHERE EmailId='SomeValue')
UPDATE Student SET (...) WHERE EmailId='SomeValue'
ELSE
INSERT INTO Student (...)
The expected output with the referred data and input values above should be thus:
введите описание изображения здесь
Не уверены, что можно сделать что-то подобное?