Задать вопрос
@vlad_281093

Почему mssql выдает ошибку?

sqlfiddle.com/#!6/14e507/16

Формулировка:
"Нужно удалить лишние записи и оставить только клиентов заведенных первыми"
Номер паспорта должен быть уникальный.
Ошибка: An expression of non-boolean type specified in a context where a condition is expected, near ')'.

Собственно, попробовал в SQLLite, и все нормально отработало:
sqlfiddle.com/#!7/68e68/2
  • Вопрос задан
  • 5142 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
k1lex
@k1lex
Программист торг. сети. C# (WPF, WinForms), T-SQL
DELETE e
FROM #employees e
INNER JOIN (
	SELECT id
		,RANK() OVER (PARTITION BY pass_num ORDER BY ID) RNK
	FROM #employees
	) X ON X.id = e.id
WHERE x.RNK > 1
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
С MSSQL практически не знаком, но ошибка вполне понятная.
В HAVING ожидается выражение, результат которого - TRUE или FALSE. Вы же пытаетесь подсунуть целочисленное значение MIN(id).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы