田间价值:03/2008
我想将它从“/”拆分,并希望更新年份的值,即2012年而不是2008年。我想更新同一列中的值,即03/2012而不是03/2008。在更新查询中,我没有得到我是否必须使用substr然后如何替换相同字符串中的新值?
谢谢
答案 0 :(得分:1)
请尝试像这样的>>>
UPDATE table SET field = replace(substr(FIELD,2,6),'2008');
答案 1 :(得分:1)
我建议使用整数来表示第0天之后的月数,'03/2008'变为1298.备选您可以使用日期(日期时间,如果您使用2005或更少)并将日期设置为1所以' 03/2008成为2008-03-01。为了在这里和现在解决你的问题,这是一个很好的解决方案,它忽略了前3个字符的值,如果它们的值为'2008',则用2012替换接下来的4个字符
update table set field = left(field, 3) + '2008' where field like '___2008'
答案 2 :(得分:1)
如果您只想更改field = 03/2008
UPDATE table
SET field = '03/2012'
where field = '03/2008'
bsm你的答案中的替换会慢一些
答案 3 :(得分:0)
非常感谢你们的回复。它以这种方式工作..
UPDATE table
SET field = REPLACE('03/2008', '2008', '2012')
where field="03/2008"