Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Substring in Select

Former Member
0 Kudos

Hallo

I have problem with following code. Can some body tell me how can I do it better.

SELECT pspnr FROM prps INTO TABLE lt_prps

WHERE fakkz = 'X'

AND pspnr+0(3) = 'C-55'.

I want to check for first four position of prps

Thank

6 REPLIES 6

Former Member
0 Kudos

Hi,

Try the below:

SELECT pspnr FROM prps INTO TABLE lt_prps

WHERE fakkz = 'X'

AND pspnr LIKE 'C-55%'.

% for a sequence of any characters (including spaces).

_ for a single character.

Hope this helps you

Regards

Shiva

awin_prabhu
Active Contributor
0 Kudos

Hi,

SELECT pspnr FROM prps INTO TABLE lt_prps

WHERE fakkz = 'X'

AND pspnr like 'C-55%'.

Thanks.

Former Member
0 Kudos

Hi Ahmad,

As also told by other's do it this way:

SELECT pspnr FROM prps INTO TABLE lt_prps
WHERE fakkz = 'X'
 and pspnr like 'C-55%'.

With luck,

Pritam.

former_member156446
Active Contributor
0 Kudos

Try this way:

DATA: des TYPE STANDARD TABLE OF selopt,
      w_des TYPE selopt.

  CONCATENATE  p_text '*' INTO p_text.

  w_des-sign = 'I'.
  w_des-option = 'CP'.
  w_des-low = p_text.
  APPEND w_des TO des. CLEAR w_des.

select...
     where FIELD IN des.

former_member585060
Active Contributor
0 Kudos

Hi,

Declare a field for flag,

Fetch all the prps fields into internal table,

Then compare the prps, and delete all other records which do not match.

SELECT pspnr 
             FROM prps INTO TABLE lt_prps
             WHERE fakkz = 'X'.

LOOP AT it_prps INTO wa_prps.

IF wa_prps-pspnr+0(4) = 'C-55'.
wa_prps-flag = 'X'.
MODIFY it_prps FROM wa_prps INDEX sy-tabix TRANSPORTING flag.
ENDIF.

ENDLOOP.

DELETE it_prps WHERE flag = ' '.

Regards

Bala Krishna

Former Member
0 Kudos

Thanks a lot it was very helpful.