開(kāi)滿天機(jī)
2018-12-06 22:12:19
使用的數(shù)據(jù)庫(kù)是sql server,現(xiàn)在有大批量的數(shù)據(jù)需要更新,更新的要求是根據(jù)ID把某一個(gè)字段換成一個(gè)新值,每次大概處理上千條數(shù)據(jù)。大家有沒(méi)有什么好的解決方案?拼接字符串就不用說(shuō)了。
20 回答

呼啦一陣風(fēng)
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超6個(gè)贊
規(guī)則是啥?能否在sql語(yǔ)句中直接實(shí)現(xiàn)規(guī)則?update table set xx=id+1 。

慕妹3242003
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊
是把某一個(gè)字段的值放到另一個(gè)字段里面還是把某個(gè)字段里面的某個(gè)值換成新值?

侃侃爾雅
TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊
1000多條數(shù)據(jù),最佳方案如下:
請(qǐng)一個(gè)農(nóng)民工,每月發(fā)工資800,每分鐘更新5條數(shù)據(jù),1小時(shí)大約更新300條數(shù)據(jù),一天工作12小時(shí),可以更新3600條數(shù)據(jù)。這樣的話,工作量只有1/3,所以只需要發(fā)800/3的工資給他就夠了,也就是266.67/月。
相對(duì)于請(qǐng)一個(gè)懂得編程的人員來(lái)說(shuō),這個(gè)是一個(gè)比較靠譜的方案,一節(jié)省了程序員的開(kāi)支,二開(kāi)拓了農(nóng)民工就業(yè)方向,三是有效降低失業(yè)率,四還可以申請(qǐng)國(guó)家高新技術(shù)開(kāi)發(fā)基金。

慕尼黑的夜晚無(wú)繁華
TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超6個(gè)贊
要更新的都是以前的就數(shù)據(jù),大概幾十萬(wàn)條吧,唉,現(xiàn)在都不知道怎么更新好

互換的青春
TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊
看來(lái)真是兩耳不聞窗外事,一心只懂寫代碼,就算2014年吧,去看看外面農(nóng)民工多少錢再說(shuō)吧,到時(shí)候別讓大多數(shù)程序員自卑就好

隔江千里
TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超10個(gè)贊
大叔真是口水哥啊,一下能說(shuō)這么多,口材不錯(cuò)。
關(guān)于解決方案我覺(jué)得你這個(gè)要是是一次性的只能寫個(gè)SQL腳本執(zhí)行一下完事。
弄個(gè)游標(biāo)遍歷更新一下。

夢(mèng)里花落0921
TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超6個(gè)贊
@最長(zhǎng)的路漫漫:?那就把這段腳本寫成存儲(chǔ)過(guò)程,在程序里去調(diào)用這個(gè)存儲(chǔ)過(guò)程就O了

茅侃侃
TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個(gè)贊
為什么我覺(jué)得很簡(jiǎn)單的,這樣實(shí)現(xiàn)不了?
寫一個(gè)定時(shí)程序,調(diào)用存儲(chǔ)過(guò)程,幾千條數(shù)據(jù),循環(huán)執(zhí)行
update? tableA set Rescode=newRescode where tableA.ResID=newtableA.ResID
額外最多考慮下執(zhí)行時(shí)間間隔果斷,會(huì)引起sql鎖定
- 20 回答
- 0 關(guān)注
- 2319 瀏覽
添加回答
舉報(bào)
0/150
提交
取消