我刚刚看到您的帖子,因为我正在寻找有关 BODS 中索引功能的信息。
index 函数返回字符串值中字符的位置。等效的 sql 函数是 INSTR。
在您的示例中(例如 8.33E-02):
SUBSTR( '8.33E-02', 1, INDEX ( '8.33E-02', 'E', 1)-1 )
==> INDEX ( '8.33E-02', 'E', 1) 将返回从位置 1 开始的字母“E”的位置。它应该是 5。
然后你使用SUBSTR 函数来提取你号码的第一部分:
SUBSTR( String Value, Start Pos, End Pos )
SUBSTR( '8.33E-02', 1, INDEX ( '8.33E-02', 'E', 1)-1 )
SUBSTR( '8.33E-02', 1, 5-1 )
你将'E'的位置减去1以保留第一部分!
回答永远都不晚! =)
SQL 等效项:
SELECT SUBSTR( '8.33E-02', 1, INSTR ( '8.33E-02', 'E')-1 )
, INSTR ( '8.33E-02', 'E')
FROM DUAL
味道