在SQL Server需要拆分左侧“/”字符

问题描述 投票:1回答:2

我在SQL 2014查询

SELECT [orde_reference],
SUBSTRING([orde_reference], 
CHARINDEX('/', [orde_reference]) + 1, 
LEN([orde_reference])) AS batch FROM   Orders 

这将返回以下

输入是,454分之86156161566156

因此需要

只有86156161566156

谢谢

sql-server
2个回答
4
投票

也许left()将是一个更清洁的选择

Select left([orde_reference],charindex('/',[orde_reference]+'/')-1)

0
投票

如果你只是想串的第一部分,比你使用了错误的价值观。字符串的第一个参数是要转换的字符串,第二个参数是起始位置,第三个是结束位置。

SELECT [orde_reference],
SUBSTRING([orde_reference], 
0,
CHARINDEX('/', [orde_reference])) AS batch FROM   Orders 

这应该这样做。

© www.soinside.com 2019 - 2024. All rights reserved.