我只想选择表TEST的那些记录,其TEMPPATH值以IN结尾(“ XGENCISB.CPY”,“ XCISTABT.CPY”)。
注意:这些IN子句值将在运行时设置
请在使用子字符串的单个查询中告诉这是否可能?
提前致谢。
最佳答案
也尝试以下操作:使用Right
和upper
:
select * from TEST where upper(Right(TEMPPATH,4)) = '.CPY'
AND TEMPPATH IS NOT NULL;
如果您对
regexp
感兴趣,请同时阅读以下内容:Regular Expressions in DB2 SQL根据OP在该问题上的修改进行编辑
假设这两个字符串的长度相同(12或相应调整),您可以尝试
select * from TEST where upper(Right(TEMPPATH,12))
IN ('XGENCISB.CPY', 'XCISTABT.CPY')
AND TEMPPATH IS NOT NULL;
关于java - 在DB2中使用Substring和Instr选择查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14456275/