SYBASE ASE 字符串替换 WHERE 子句
SYBASE ASE String replace in WHERE clause
我有一个 SYBASE ASE table,其值如下:
Table 1 :
**Value** **Status**
A STATUS 1
B STATUS 3
C STATUS 4
我必须像这样根据值列表过滤值 .. STATUS1、STATUS2、STATUS3(值之间没有 space)。
我想从 Table 1 的值列中删除 space/blanks 并与列表进行比较。
我试过下面的代码,但没有用
select value ,status from Table 1
where str_replace(status,' ','') IN ('STATUS1','STATUS2','STATUS3')
select value ,status from Table 1
where str_replace(status,' ',NULL) IN ('STATUS1','STATUS2','STATUS3')
知道如何在不更改列表值的情况下实现
后一个应该有效(除了 Table 1
table 名称)。
请注意,Sybase 中的空字符串通常被解释为单个 space。参见 http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36271.1550/html/blocks/blocks311.htm
我有一个 SYBASE ASE table,其值如下:
Table 1 :
**Value** **Status**
A STATUS 1
B STATUS 3
C STATUS 4
我必须像这样根据值列表过滤值 .. STATUS1、STATUS2、STATUS3(值之间没有 space)。
我想从 Table 1 的值列中删除 space/blanks 并与列表进行比较。
我试过下面的代码,但没有用
select value ,status from Table 1
where str_replace(status,' ','') IN ('STATUS1','STATUS2','STATUS3')
select value ,status from Table 1
where str_replace(status,' ',NULL) IN ('STATUS1','STATUS2','STATUS3')
知道如何在不更改列表值的情况下实现
后一个应该有效(除了 Table 1
table 名称)。
请注意,Sybase 中的空字符串通常被解释为单个 space。参见 http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36271.1550/html/blocks/blocks311.htm