Вход на сайт
Чем заменить функцию instr в SQL
117
19.09.07 22:43
У меня есть две колонки в таблице
в них содержатся строки
если содержание одной колонки содержится в другой то я хочу заменить ее содержание
как это сделать если в SQL нету функции inStr?
Спасибо за ответ!!
в них содержатся строки
если содержание одной колонки содержится в другой то я хочу заменить ее содержание
как это сделать если в SQL нету функции inStr?
Спасибо за ответ!!
NEW 21.09.07 10:44
Конечно не выходит, ведь задача была - хочу заменить и если вы разбираетесь в контексе как в таковом, то поняли бы для чего UPDATE...
Вот вам два примера:
SELECT column1,column2 FROM mytable WHERE PATINDEX('%'+CONVERT(varchar,column1)+'%',CONVERT(varchar,column2)) > 0;
или
SELECT (CASE WHEN PATINDEX('%'+CONVERT(varchar,column1)+'%',CONVERT(varchar,column2)) > 0 THEN column1 ELSE column2 END) AS mycolumn FROM mytable;
Надеюсь вы знаете, что название колонок и самой таблицы нужно заменить на свои и сделать выводы работы и сравнений через WHERE или CASE.
На будущее: для програмирования очень важна параметризация - если вы не параметризируете свои задачи, то и не ждите правильного ответа.
Вот вам два примера:
SELECT column1,column2 FROM mytable WHERE PATINDEX('%'+CONVERT(varchar,column1)+'%',CONVERT(varchar,column2)) > 0;
или
SELECT (CASE WHEN PATINDEX('%'+CONVERT(varchar,column1)+'%',CONVERT(varchar,column2)) > 0 THEN column1 ELSE column2 END) AS mycolumn FROM mytable;
Надеюсь вы знаете, что название колонок и самой таблицы нужно заменить на свои и сделать выводы работы и сравнений через WHERE или CASE.
На будущее: для програмирования очень важна параметризация - если вы не параметризируете свои задачи, то и не ждите правильного ответа.
╘ Краткость - сестра Таланта.