⑴ sql語句replace怎麼替換
Replace("字元串","要被替代的字元串","替代後的字元串")
1、sql
replace
into用法詳細說明REPLACE的運行與INSERT很相似。只有一點例外,假如表中的一個舊記錄與一個用於PRIMARYKEY或一個UNIQUE索引的新記錄具有相同的值,則在新記錄被插入之前,舊記錄被刪除。
2、注意,除非表有一個PRIMARY
KEY或UNIQUE索引,否則,使用一個REPLACE語句沒有意義。該語句會與INSERT相同,因為沒有索引被用於確定是否新行復制了其它的行。
3、所有列的值均取自在REPLACE語句中被指定的值。所有缺失的列被設置為各自的默認值,這和INSERT一樣。您不能從當前行中引用值,也不能在新行中使用值。如果您使用一個例如「SET
col_name
=
col_name
+
1」的賦值,則對位於右側的列名稱的引用會被作DEFAULT(col_name)處理。因此,該賦值相當於SET
col_name
=
DEFAULT(col_name)
+
1。為了能夠使用REPLACE,必須同時擁有表的INSERT和DELETE許可權。
⑵ SQL語句replace替換問題
在使用iwms系統的過程中,我們會經常遇到數據內容的替換操作。在告訴大家如何替換數據內容之前,我建議大家先了解一下SQL
Server資料庫的數據存儲類型:
SQL
Server數據類型:
以上是資料庫的基礎知識,是做網站的朋友都應該知道的內容(無論你使用什麼cms),所以建議大家都耐心看一下。
數據替換一般都發生在字元串數據欄位中,除了ntext類型欄位以外的其他字元串數據欄位都可以使用以下的sql語句進行替換:
update
[swf_Upload]
set
[Dir]
=
replace([Dir],'200901/14','200901/15')
update
[swf_Content]
set
[Description]
=
replace([Description],'200901/14','200901/15')
update
[swf_Content_01]
set
[content]
=
replace(convert(varchar(4000),
[content]),'200901/14','200901/15')
UPDATE
[數據表名]
SET
[欄位名]
=
REPLACE([欄位名],'老字元串','新字元串')
比如,替換iwms文章數據表(iwms_news)中的標題欄位(title)的部分內容,我們應該這么寫:
UPDATE
[iwms_news]
SET
[title]
=
REPLACE([title],'老字元串','新字元串')
上面的sql語句在iwms後台的sql執行裡面可以直接執行,基本上可以搞定所有的替換操作,但是由於ntext數據長度的原因,這一方法對ntext類型欄位無效。那我們該用什麼方法替換ntext類型欄位的內容呢?方法有兩種:
一是類型轉換,將ntext類型轉換為varchar類型,然後再用replace。適合於單頁內容最大長度<4000的文章。
update
[數據表名]
set
[欄位名]
=
replace(convert(varchar(4000),
[欄位名]),'老字元串','新字元串')
比如,替換iwms文章數據表(iwms_news)中的標題欄位(content,ntext類型欄位)的部分內容,我們應該這么寫:
update
iwms_news
set
[content]
=
replace(convert(varchar(4000),[content]),'老字元串','新字元串')
二是SQL
Server存儲過程
declare
@ptr
varbinary(16)
declare
@artId
int
declare
@Position
int,@len
int
set
@len
=
datalength('老字元串')
declare
wux_Cursor
scroll
Cursor
for
select
textptr([欄位名]),[key欄位名]
from
[數據表名]
for
read
only
open
wux_Cursor
fetch
next
from
wux_Cursor
into
@ptr,@artId
while
@@fetch_status=0
begin
select
@Position=patindex('%老字元串%',[欄位名])
from
[數據表名]
where
[key欄位名]=@artId
while
@Position>0
begin
set
@Position=@Position-1
⑶ sql中,如何用replace把d表abc欄位中的全部記錄中的123/替換為空
查詢數據
select replace(abc欄位,'123/','') from d表
更新數據,更改數據做好備份
update d表
set abc欄位=replace(abc欄位,'123/','')
⑷ sql的REPLACE
rylx != REPLACE(R_RYLX_MC, '/XXRY/', '/Y3/')
用R_RYLX_MC欄位有"/XXRY/"字元時替換為"/Y3/",再與rylx字元比較是否不相等
⑸ SQL語句replace替換問題
Replace("字元串","要被替代的字元串","替代後的字元串")
⑹ 資料庫SQL server中 replace使用方法
replace使用方法:
REPLACE ( ''string_replace1'' , ''string_replace2'' , ''string_replace3'' )
參數
''string_replace1''
待搜索的字元串表達式。string_replace1 可以是字元數據或二進制數據。
''string_replace2''
待查找的字元串表達式。string_replace2 可以是字元數據或二進制數據。
''string_replace3''
替換用的字元串表達式。string_replace3 可以是字元數據或二進制數據。
返回類型為字元串
⑺ SQL語句替換某個欄位中的值怎麼寫
SQL SERVER的使用了REPLAcE將某一列欄位中的某個值替換為其他的值,主要的代碼可以參考以下:
SQL SErVER將某一列的欄位中的某個值替換為其他的值,
Update 的表名 set 的列名 = REPLaCE( 列名 ,'aa','bb'),
SQl SERVER"的函數 replace 的參數 1 的數據的類型 Ntext 無效"解決辦法。
UPDAtE 的表名 SET的列名= REPlACE(CAST 的列名 AS Varchar(8000)),「aa」,」bb」)。
⑻ sql中replace(欄位,'/')
你那寫錯了,這個才是
REPLACE
用第三個表達式替換第一個字元串表達式中出現的所有第二個給定字元串表達式。
語法
REPLACE
(
''string_replace1''
,
''string_replace2''
,
''string_replace3''
)
參數
''string_replace1''
待搜索的字元串表達式。string_replace1
可以是字元數據或二進制數據。
''string_replace2''
待查找的字元串表達式。string_replace2
可以是字元數據或二進制數據。
''string_replace3''
替換用的字元串表達式。string_replace3
可以是字元數據或二進制數據。
返回類型
如果
string_replace(1、2
或
3)是支持的字元數據類型之一,則返回字元數據。如果
string_replace(1、2
或
3)是支持的
binary
數據類型之一,則返回二進制數據。
示例
下例用
xxx
替換
abcdefghi
中的字元串
cde。
SELECT
REPLACE(''abcdefghicde'',''cde'',''xxx'')GO
下面是結果集:
------------abxxxfghixxx(1
row(s)
affected)
⑼ SQL語句 替換某個欄位中的某個值
1、創建測試表,
create table test_replace(id number, value varchar2(20));