🌻
SQLServerで文字列置換サンプル
単純な文字列置換
UPDATE table1
SET col1 = REPLACE(col1, "abc", "xyz")
WHERE col1 like '%abc%'
姓名のマスキング(例えば 田中浩三郎 → 田***郎)
UPDATE table
SET
name = REPLACE(name, SUBSTRING(name, 2, LEN(name)-2), REPLICATE('*', LEN(name)-2))
WHERE
LEN(name) > 2
改行コードを発見
-- LF
SELECT * FROM table
WHERE name LIKE '%' + CHAR(13) + '%';
-- CR
SELECT * FROM table
WHERE name LIKE '%' + CHAR(13) + CHAR(10) + '%';
-- CRLF
SELECT * FROM table
WHERE name LIKE '%' + NCHAR(13) + NCHAR(10) + '%';
改行コードを置換
-- LF
UPDATE table SET
name = REPLACE(name, CHAR(13), ' ');
-- CR
UPDATE table SET
name = REPLACE(name, CHAR(13) + CHAR(10), ' ');
-- CRLF
UPDATE table SET
name = REPLACE(name, NCHAR(13) + NCHAR(10), ' ');
Discussion