全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2025
推到 Plurk!
推到 Facebook!

請教大量更新資料的SQL寫法

答題得分者是:terrychen
wscski
一般會員


發表:19
回覆:38
積分:11
註冊:2002-04-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-02-06 10:59:21 IP:163.28.xxx.xxx 未訂閱
各位大大,請教一種更新資料的SQL寫法 在我資料庫中有一欄位(varchar)讓使用者輸入一筆字串 這筆字串是會員編號,例如:0123或012-3(3是檢驗碼) 由於一開始沒把輸入規則寫好,造成輸入者有時有輸入「-」、有時沒輸入「-」 造成現在資料庫中資料亂掉了 現在我要把資料庫中所有有「-」的字元拿掉 原本寫直接寫一程式一筆筆讀出來判斷有「-」的拿掉再回寫 但是如果直接可以寫成一個SQL執行就更方便了 卡在不知道怎麼在SQL中寫可以判斷是否有「-」,然後再拿掉回寫 有「-」的一定是在倒數第2個字元 還望高手指教,謝謝!感恩不盡!
terrychen
尊榮會員


發表:90
回覆:794
積分:501
註冊:2003-05-01

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-02-06 11:19:27 IP:61.221.xxx.xxx 未訂閱
您好: 此範例將 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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-02-06 12:26:04 IP:210.65.xxx.xxx 未訂閱
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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-02-06 12:47:54 IP:163.28.xxx.xxx 未訂閱
感謝terrychen、Fishman兩位大大的指點 感恩!
系統時間:2024-09-09 18:02:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!