问题
如何将以下代码从SGC1-0001[更改为SGC1-001。
表为stations,列为code。我需要使用更新查询,但不确定如何使用它。
列中有更多的记录略有不同,但我应该能够用一个示例来计算它。
样本数据
我想把它们一分为二,虽然一次一个也不想做。
SGC1-0001[
SGC1-0002[
..
SGC1-0019[
SGC1-0021[
SGC2-0001[
SGC2-0002[
..
SGC2-0016[
SGC2-0017[
SGC3-0003[
SGC3-0004[
...
SGC4-0018[
SGC4-0021[
SGC4-0022[
SGC4-0025[
SGC4-0029[逻辑(伪码)
Delete first 0 and last [ from all发布于 2015-01-07 16:41:19
如果您想要修剪该列中所有记录的最后一个字符,并删除前面的0,下面的操作应该可以做到这一点:
UPDATE stations
SET code = REPLACE(LEFT(code, LEN(code) - 1), '-0', '-')如果您只是想替换前面的0,请执行以下操作:
UPDATE stations
SET code = REPLACE(code, '-0', '-')此外,以下几点可能是值得注意的:
字符串函数
发布于 2015-01-07 16:39:03
试一试,更新查询
因为您的所有代码最后都有“[”,所以您可以使用此查询。它将从所有记录中删除最后一个'['和'-'之后的前0。
UPDATE stations
SET CODE = LEFT(replace(code,right(code,1),''),4) + '-'+
RIGHT(RIGHT(replace(code,right(code,1),''),4),3)它将把SGC1-0029[替换为SGC1-029,SGC1-0001[替换为SGC1-001
最好参考一些sql basic 教程。
https://stackoverflow.com/questions/27824145
复制相似问题