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

Откуда:
Сообщений: 740
имеется таблица Zadan - в ней есть 2 текстовых поля TIP и TIP_DOP

этими данными из полей TIP и TIP_DOP мне нужно обновить поле category таблицы Job,
причем если поле TIP_DOP не заполенно (или пусто), то
Но если TIP_DOP имеет значение, отличное от пустоты - типа length(Rtrim(TIP_DOP))>0, то
Job.category мне нужно заполнить Job.category=TIP+'-'+TIP_DOP (Отк-фирма)

как эту проверку сделать в запросе апдейта?

update Job 
set 
Job.category=zadan.TIP
From Zadan
10 авг 11, 09:16    [11095124]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
А связ то между таблицами какая?
10 авг 11, 09:18    [11095132]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
Ольга Семенова
Member

Откуда:
Сообщений: 740
tpg
А связ то между таблицами какая?


по ключевому полю ID

update Job 
set 
Job.category=zadan.TIP
From Zadan
Where Zadan.ID=Job.ID
10 авг 11, 09:23    [11095150]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
Ольга Семенова
Member

Откуда:
Сообщений: 740
В первом сообщении немного не дописала мысль

этими данными из полей TIP и TIP_DOP мне нужно обновить поле category таблицы Job,
причем если поле TIP_DOP не заполенно (или пусто), то присвоить полю Job.category только TIP
Но если TIP_DOP имеет значение, отличное от пустоты - типа length(Rtrim(TIP_DOP))>0, то
Job.category мне нужно заполнить Job.category=TIP+'-'+TIP_DOP (Отк-фирма)
10 авг 11, 09:26    [11095176]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
aleks2
Guest
update Job set  category=zadan.TIP+ISNULL(zadan.TIP_DOP, '')
From Zadan INNER JOIN Job
ON Zadan.ID=Job.ID
10 авг 11, 09:31    [11095207]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
Guf
Member

Откуда: Новосибирск
Сообщений: 659
Ольга Семенова,
Job.category=TIP + ISNULL('-' + NULLIF(LTRIM(RTRIM(TIP_DOP)), ''), '')
10 авг 11, 09:35    [11095223]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
Ольга Семенова
Member

Откуда:
Сообщений: 740
спасибо

А как в записях убрать двойные кавычки если они там встречаются?

UPDATE Job 
SET если в category имеется кавычки то Убрать их
From Zadan
Where Zadan.ID=Job.ID

Из набора данных
"Авто"
Лодка "Универсальная"
"телефон"

получить

Авто
Лодка Универсальная
телефон

т.е. любое вхождение кавычек убрать
10 авг 11, 11:28    [11096061]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
Raoul
Member

Откуда:
Сообщений: 177
SET category=REPLACE(category,'"','')
10 авг 11, 11:31    [11096086]     Ответить | Цитировать Сообщить модератору
 Re: Составление запроса на сумму и проверка на уникальность  [new]
Ольга Семенова
Member

Откуда:
Сообщений: 740
спасибо
10 авг 11, 11:45    [11096229]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
dragonfly06
Member

Откуда:
Сообщений: 3
А если надо " - заменить на '', т.е.
(двойные кавычки на 2 одинарные) ?

SET category=REPLACE(category,' " ' ,'''')-так же не прокатит(((.
15 ноя 11, 14:18    [11599419]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
одинарные кавычки надо удваивать

SET category=REPLACE(category,' " ' ,'''''')
15 ноя 11, 14:22    [11599457]     Ответить | Цитировать Сообщить модератору
 Re: Функция проверки на наличие данных в поле и конкатенации  [new]
dragonfly06
Member

Откуда:
Сообщений: 3
Ура! Спасибки:)
15 ноя 11, 14:49    [11599793]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить