我有表Table1
。隨着場f1, f2
在sql中更新查詢
表中的值是這樣的(值包含引號)
"Hello1", "ok1"
"Hello2", "ok2"
我需要一個更新查詢,使其從值 刪除引號,它應該看起來像
Hello1, ok1
Hello2, ok2
我有表Table1
。隨着場f1, f2
在sql中更新查詢
表中的值是這樣的(值包含引號)
"Hello1", "ok1"
"Hello2", "ok2"
我需要一個更新查詢,使其從值 刪除引號,它應該看起來像
Hello1, ok1
Hello2, ok2
使用替換功能去除雙引號。
UPDATE Table1 set f1 = REPLACE(f1,'"',''), f2 = REPLACE(f2,'"','');
您可以編寫完整的查詢來獲取我需要的輸出請 – Linto 2011-05-03 22:07:27
運行更新後,它只是一個問題選擇列:SELECT f1,f2 FROM Table1 – 2011-05-03 22:09:58
@ user310850這就是整個事情,除非你想添加一個地方 – 2011-05-03 22:10:32
Update Table1
Set f1 = Case
When f1 Like '"%' And f1 Like '%"' Then Substring(f1,2,Len(f1)-2)
When f1 Like '"%' Then Substring(f1,1,Len(f1)-1)
When f1 Like '%"' Then Substring(f1,2,Len(f1)-1)
Else f1
End
, f2 = Case
When f2 Like '"%' And f2 Like '%"' Then Substring(f2,2,Len(f2)-2)
When f2 Like '"%' Then Substring(f2,1,Len(f2)-1)
When f2 Like '%"' Then Substring(f2,2,Len(f2)-1)
Else f2
End
我認爲這可能取決於各種SQL,但在MySQL中你可以這樣做:
UPDATE Table1 SET f1 = TRIM(BOTH '"' FROM f1), f2 = TRIM(BOTH '"' FROM f2);
周邊報價使用:
UPDATE Table1 SET
f1 = SUBSTRING(f1, 2, LEN(f1)-2),
f2 = SUBSTRING(f2, 2, LEN(f2)-2)
如果要刪除所有引號(包括中間引號)使用方法:
UPDATE Table1 set f1 = REPLACE(f1,'"',''), f2 = REPLACE(f2,'"','')
然後得到最終的輸出,你可以使用:
SELECT * FROM Table1
什麼數據庫系統,您使用的? – yan 2011-05-03 21:59:53
iam使用sql數據庫 – Linto 2011-05-03 22:00:39
有很多SQL數據庫..您使用的是什麼數據庫引擎?即MySQL,PostgreSQL,Oracle等 – yan 2011-05-03 22:01:02