IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Программирование (https://www.imho.ws/forumdisplay.php?f=40)
-   -   SQL. Обновить поля. (https://www.imho.ws/showthread.php?t=94218)

Sam Dark 15.10.2005 00:58

SQL. Обновить поля.
 
Задача:

Есть таблица distrib, в ней есть столбцы id, name, path. Надо для каждого столбца заменить в полях name и path все \ на \\.

Как такое сделать?

Спасибо.

Naked 15.10.2005 08:27

Цитата:

UPDATE distrib SET name=replace(name, '\', '\\')
Вроде так, если будет ругаться, то нужно replace (...) сделать функцией и потом уже говорить
UPDATE distrib SET name=my_function(name)
Это работает в Postgres, думаю SQL язык для всех один:)

danial 12.11.2005 14:19

ну не у всех один, тем более если это касается функций
мануал к СУБД надо почитать =)

Bondiks 27.11.2005 00:14

Цитата:

Сообщение от Sam Dark
Задача:

Есть таблица distrib, в ней есть столбцы id, name, path. Надо для каждого столбца заменить в полях name и path все \ на \\.

Как такое сделать?

Спасибо.

Может вот так:

UPDATE distrib
SET path = replace(path, '\','\\')
WHERE ...

Или так (для SQL Server):

DECLARE @mypath VARCHAR(255), @slash_position INT

SET @mypath=(SELECT path from distrib where... должна быть возвращена одна строка, скажем, через курсор)
SET @slash_position = CHARINDEX( '\', @mypath)
SET @mypath = STUFF(@mypath, @slash_position, 1, '\\')

update distrib
set path=@mypath
where... (должна быть возвращена одна строка, скажем, через курсор)


Часовой пояс GMT +4, время: 01:14.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.