修剪datatrieve所需的sql中的字符串的一部分

时间:2014-03-25 17:35:10

标签: sql trim

我的数据库中的对应表中有一个名为notation的列。此列的值如下:

notation

SSQSUPER405575681 || 032-797 || 034828 1141289
SGQSUPER405575091 || 032-797 || 034828 1140802
SGQSUPER395729693 || 032-797 || 034828 1061943

我希望这个值只有SSQSUPER405575681或SGQSUPER405575091用于表示法列并修剪字符串的其余部分,如|| 032-797 || 034828 1141289在第1行和|| 032-797 || 034828 1140802在第2行。

请告诉我该怎么做。

1 个答案:

答案 0 :(得分:0)

嗯,Sybase函数通常与SQL Server的T-SQL非常相似,因此要从符号列中提取所需的子字符串,请尝试:

select 
    substring([notation], 1, patindex ('%||%',[notation]) - 1) as f1,
    substring([notation], 
        patindex ('%||%',[notation]),
        len([notation]) - patindex ('%||%',[notation]) ) as f2
from [correspondence]

如果这不起作用,您可能会看到Sybase功能的工作方式是否有所不同。