在 SQL 中,如何删除表中特定列的值的前 4 个字符?列名是Student Code,示例值为ABCD123Stu1231。我想从表中删除所有记录的前 4 个字符
Student Code
ABCD123Stu1231
请指导我
SELECT RIGHT(MyColumn, LEN(MyColumn) - 4) AS MyTrimmedColumn
编辑:为了解释,RIGHT 需要 2 个参数——要操作的字符串(或列),以及要返回的字符数(从字符串的“右侧”开始)。LEN 返回列数据的长度,我们减去四,这样我们的 RIGHT 函数将最左边的 4 个字符留在“后面”。
希望这是有道理的。
再次编辑 - 我刚刚阅读了 Andrew 的回复,他很可能已经正确地解释了,我可能弄错了。如果是这种情况(并且您想更新表而不仅仅是返回修改后的结果),您可以这样做:
UPDATE MyTable SET MyColumn = RIGHT(MyColumn, LEN(MyColumn) - 4)
他走在正确的轨道上,但他的解决方案会将4 个字符 保留 在字符串的开头,而不是丢弃上述 4 个字符。