i have string type abc_01, abcd_01 or 02 now i want the substring upto _ ie abc_,abcd_ etc. I am using db2 as400 .Please suggest the processing through RIGHT or LEFT function
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Use the POSITION built-in function. The format is either:
or
I also suggest using a CASE structure to check for when there is no _ or if it’s at the beginning or end. Here is an example. We’ll assume, for the sake of the example that the field in question is creatively named FIELD1 and that it does not allow NULL values.
Your question requested the use of the LEFT and RIGHT built-in functions, so that’s what the example uses. For the right side, I suggest that using SUBSTRING is easier and more readable. It would look like this: SUBSTRING(FIELD1,POSITION(‘_’ IN FIELD1)+1)