伊莉討論區

標題: SQLSERVER里的更新語句問題 [打印本頁]

作者: llq520    時間: 2014-9-22 12:10 AM     標題: SQLSERVER里的更新語句問題

請問用什麼命令可以讓數據庫里表內某一列某几行里的特定數據替換而且不改動其他列內原有內容

這里注意:原列里都是有內容的


比如

A表內a1列第55行有  '1,2,3,4,5,6,7 +8+9=2014-09-12-12:30:57'
       替換為  '1,2,3,4,5,6,7 +8+9+10+11+12=2014-09-17-12:30:57'

A表內a1列第84行有 '5-4-3-2-1-0 +9+10+11=2014-09-12-15:57:03'
       替換為 '5-4-3-2-1-0 +9+10+11=2014-09-17-15:57:03'

語句應該怎麼寫   我直接使用update+where 替換的倒是成功了,但是原來的數據也沒了。

作者: paul1020_eyny    時間: 2014-9-22 08:54 AM

例如:
Update A表
Set A1='1,2,3,4,5,6,7 +8+9+10+11+12=2014-09-17-12:30:57'
Where A1='1,2,3,4,5,6,7 +8+9=2014-09-12-12:30:57'

重點是Where條件,最好是下在Primary Key上,以免誤更新到別的Row去。
話說,你的問題問的很模糊,Table架構也不清不楚,
所以,先以意測你的問題來回你了…
作者: aming45    時間: 2014-9-22 10:36 AM

你要先搞清楚TABLE的結構,WHERE條件要下在每筆資料的KEY欄位.
你的問法也不太對,都在使用SQL SERVER了,理應不會再有行列的敘述才對,
應該要了解,databse,table,column 之間的關係.
作者: llq520    時間: 2014-9-23 12:11 AM

aming45 發表於 2014-9-22 10:36 AM
你要先搞清楚TABLE的結構,WHERE條件要下在每筆資料的KEY欄位.
你的問法也不太對,都在使用SQL SERVER了,理應 ...

抱歉,小弟初學這個。如果不是最近被强拉去管WEBSITE ,都不知道什麼時候有機會接觸這個
作者: llq520    時間: 2014-9-23 12:17 AM

paul1020_eyny 發表於 2014-9-22 08:54 AM
例如:
Update A表
Set A1='1,2,3,4,5,6,7 +8+9+10+11+12=2014-09-17-12:30:57'

這個不是我想表達的效果


我的意思是
例如有一個DATABASE 名字叫SERVER
內有一個TABLE 叫 TB1
TB1內有一個COLUMN 叫A1
架設 A1的數據類型為NTEXT,NVARCHAR,VARCHAR 怎麼弄
     或者為DATATIME,SMALLMONEY,INT 又怎麼弄


前提是A1 內還有其他數據,UPDATE的同時還要保留原有數據 而且每個ROW內的值不規則,只有几個字符相同,怎麼辦???
作者: paul1020_eyny    時間: 2014-9-23 08:22 AM

llq520 發表於 2014-9-23 12:17 AM
這個不是我想表達的效果

什麼叫做Update還要保留原有數據?!
更新就更新了,要保留修改的Log,自已去設計,DB不會幫你做這些的。
更新時,每個Row的值一不一樣,有差嗎?!
跟幾個字符相同而已,又有什麼關係?! 沒有影響好嘛!!
更新時,不同的欄位型態要怎麼下SQL,這是最基本的,字串要前後加單引號什麼的…
建議您也麻煩您,從最基本的T-SQL去學習吧…
感覺你根本就沒有基礎,沒有自已去下過苦功就上來問問題…
連問題都不會問,想幫您解答都無從使力起啊…
作者: llq520    時間: 2014-9-23 11:02 PM

paul1020_eyny 發表於 2014-9-23 08:22 AM
什麼叫做Update還要保留原有數據?!
更新就更新了,要保留修改的Log,自已去設計,DB不會幫你做這些的。
...

難不成必須要回到最基本的人工替換
導出excel自己編輯嗎??
作者: paul1020_eyny    時間: 2014-9-24 08:09 AM

llq520 發表於 2014-9-23 11:02 PM
難不成必須要回到最基本的人工替換
導出excel自己編輯嗎??

當然不是,是要有邏輯!!
你要搞清楚Update語法的寫法,然後想辦法去理出邏輯,
不然,就一筆一筆慢慢更新吧…
作者: garypeng1979    時間: 2014-9-25 12:11 AM

看起來是要換掉欄位裡的某部分文字嗎?
如果是應該要用 SQL 的 RIGHT 或 SUBSTRING 之類的字串處理
作者: llq520    時間: 2014-9-27 11:58 PM

garypeng1979 發表於 2014-9-25 12:11 AM
看起來是要換掉欄位裡的某部分文字嗎?
如果是應該要用 SQL 的 RIGHT 或 SUBSTRING 之類的字串處理 ...

請給點樣例格式做參考好嗎




歡迎光臨 伊莉討論區 (http://34534.eyny.com/) Powered by Discuz!