Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Удаление строк Delete  [new]
glyzin
Member

Откуда:
Сообщений: 258
Добрый день. Есть такой запрос, работает!

DECLARE @year int;

SET @year=2013;
select count(*) FROM tarn_h as hh
LEFT JOIN [tarn_t] as tt
ON tt.id=hh.id
WHERE tt.id is null and year(hh.date_b) =@year

т.е. хочу удалить данные из таблицы tarn_h за определенный год, у которых нет записей в таблице tarn_t. Две таблицы связываются по полю id.

делаю так

DELETE FROM tarn_h
FROM tarn_h as hh LEFT JOIN [tarn_t] as tt ON tt.id_doc=hh.id
WHERE tt.id is null and year(hh.date_b) =@year;

выдает ошибку

Conversion failed when converting the varchar value 'ed1e1b58-bd57-11e2-a197-003048ff1647 ' to data type int.

тип поля date_b datetime

не могу понять почему select работает, а удалять не хочет.
4 мар 19, 17:24    [21824671]     Ответить | Цитировать Сообщить модератору
 Re: Удаление строк Delete  [new]
Konst_One
Member

Откуда:
Сообщений: 11512
id_doc в таблице [tarn_t] какого типа?
4 мар 19, 17:35    [21824681]     Ответить | Цитировать Сообщить модератору
 Re: Удаление строк Delete  [new]
glyzin
Member

Откуда:
Сообщений: 258
char 70
4 мар 19, 17:36    [21824684]     Ответить | Цитировать Сообщить модератору
 Re: Удаление строк Delete  [new]
glyzin
Member

Откуда:
Сообщений: 258
все ошибка в коде не заметил
4 мар 19, 17:37    [21824685]     Ответить | Цитировать Сообщить модератору
 Re: Удаление строк Delete  [new]
glyzin
Member

Откуда:
Сообщений: 258
спасибо за наводку, бился час
4 мар 19, 17:37    [21824687]     Ответить | Цитировать Сообщить модератору
 Re: Удаление строк Delete  [new]
glyzin
Member

Откуда:
Сообщений: 258
спасибо
4 мар 19, 17:38    [21824688]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить