SQL选择"&"的权利标记

时间:2015-12-09 20:51:45

标签: sql string select

我正在编写一些需要在字符串中选择特定字符数的sql代码。示例字符串将是" 3350775& 1.3。"。我需要将一列分成两列,一列是&和左侧的数字。而另一个是正确的。左侧很容易,因为它总是7位数,所以我可以使用

SELECT 
Left(Col, 7) as 'Order Number'
From tableA where Col like ('%&%')

但是,右侧的数字可能会改变长度。它可能是1.1。,或12.3。或各种不同的组合。有没有办法选择&然后选择右侧的所有数字。一些例子如下:

3154878&安培; 1.1。在col1和1.1中将是3154878。在col2

3154878&安培; 12.1。在col1和12.1中将是3154878。在col2。

1 个答案:

答案 0 :(得分:3)

如果我理解正确,我认为这应该适合你: -

delete

另一种可能的(更简单的)解决方案是使用stuff用空字符串替换前8个字符: -

SELECT 
Left(Col, 7) as 'Order Number',
Replace(Col, Left(Col, 7)+'&','') as 'Right hand side'
From tableA where Col like ('%&%')

这是可以采取各种解决方案的问题之一,它们都会返回相同的结果。