我坐在一个数据库上,其中一列包含两种数据类型;)

例子:

"1";"When the Wind Blows   0275";"James Patterson "
"4";"The Reluctant Fundamentalist      1026";"Mohsin Hamid";

用户认为这样可以很容易地搜索到它。..

现在我试图解决这个问题,从标题字段中取出ID并将其放入它自己的列中。

如何使用正则表达式选择标题,以便我只获得标题末尾的四位数字?这个数字可以从零开始,标题可以包含比那些4更多的数字。

也不能保证数字是标题中的最后四个字符,有时后面有一些空格。 SUBSTRING 在这种情况下将不起作用

谢谢你的帮助!

有帮助吗?

解决方案

如果您需要提取的四位数字正好位于字符串的末尾,或者后面只有空格,那么使用 RIGHT() 使用 RTRIM() 功能:

SELECT
  RIGHT(RTRIM(YourColumnName), 4) AS SomeCode
FROM
  YourTableName
WHERE
  ...
;
许可以下: CC-BY-SA归因
不隶属于 dba.stackexchange
scroll top