Принятие никакого аннулирует, Вы GROUP BY
уникальные столбцы, и SELECT
MIN (or MAX)
RowId как строка для хранения. Затем просто удалите все, что не имело идентификатора строки:
DELETE FROM MyTable
LEFT OUTER JOIN (
SELECT MIN(RowId) as RowId, Col1, Col2, Col3
FROM MyTable
GROUP BY Col1, Col2, Col3
) as KeepRows ON
MyTable.RowId = KeepRows.RowId
WHERE
KeepRows.RowId IS NULL
В случае, если у Вас есть GUID вместо целого числа, можно заменить
MIN(RowId)
с
CONVERT(uniqueidentifier, MIN(CONVERT(char(36), MyGuidColumn)))
Демонстрация REPL была частью того, «что может произойти дальше», то есть после 4.0; в .NET 5.0 или что-то подобное.
Это , а не 4.0 функциональность, и никогда не было.
Marc's answer is entirely correct, the possibility of a repl or script like c# has been discussed by Eric Lippert in two blog posts:
I would add that, the 2010 CTP does contain an f# repl (not much use for c# but if you were interested in some aspect of the BCL or CLR then it might be sufficient for your needs)
I find that LINQPad makes up for the lack of a REPL in many cases. It would be nice to get it integrated into Visual studio so you could interact with your existing code base more easily though.
Вероятно, стоит упомянуть, что проект Mono уже имеет C # REPL, который я обычно использую для тех небольших проверок, которые вы делаете время от времени. Взгляните. Кроме того, если я тестирую идею, с которой мне неудобно, Mono собирается хорошо справиться, и не стоит начинать новый тестовый проект, тогда Компилятор сниппета всегда пригодится.