請教大量更新資料的SQL寫法 |
答題得分者是:terrychen
|
wscski
一般會員 發表:19 回覆:38 積分:11 註冊:2002-04-15 發送簡訊給我 |
各位大大,請教一種更新資料的SQL寫法
在我資料庫中有一欄位(varchar)讓使用者輸入一筆字串
這筆字串是會員編號,例如:0123或012-3(3是檢驗碼)
由於一開始沒把輸入規則寫好,造成輸入者有時有輸入「-」、有時沒輸入「-」
造成現在資料庫中資料亂掉了
現在我要把資料庫中所有有「-」的字元拿掉
原本寫直接寫一程式一筆筆讀出來判斷有「-」的拿掉再回寫
但是如果直接可以寫成一個SQL執行就更方便了
卡在不知道怎麼在SQL中寫可以判斷是否有「-」,然後再拿掉回寫
有「-」的一定是在倒數第2個字元 還望高手指教,謝謝!感恩不盡!
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
您好:
此範例將 abcdefghi 中的 cde 字串取代為 xxx。 SELECT REPLACE('abcdefghicde','cde','xxx')
或
UPDATE import100_status
SET status_name = SUBSTRING(status_name, 1, 1) SUBSTRING(status_name, 3,
1)
若使用update再加上where 即可 ~~應無所住而生其心~~ 發表人 - Terrychen 於 2004/02/06 11:35:35
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: 如 terrychen 所言,使用 Replace 指令
update table set field = replace(field,'-','')但是 Replace 僅限於 SQL Server 2000 & Oracle,SQL Server 6.5 似乎沒有 Support -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
wscski
一般會員 發表:19 回覆:38 積分:11 註冊:2002-04-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |