Yes, it should be possible to achieve this without flooding your DBMS with possibly thousands of queries:
DATA: lt_knuma_ag_hash TYPE HASHED TABLE OF insert_type_of_knuma_ag_here WITH UNIQUE KEY TABLE_table_line.
IF li_promo[] IS NOT INITIAL.
SELECT DISTINCT knuma_ag
FROM zta_fg_dest
INTO TABLE lt_knuma_ag_hash
FOR ALL ENTRIES IN li_promo
WHERE knuma_ag = li_promo-knuma_ag.
ENDIF.
LOOP AT li_promo ASSIGNING <li_promo>.
READ TABLE lt_knuma_ag_hash TRANSPORTING NO FIELDS WITH TABLE KEY table_line = <li_promo>-knuma_ag.
IF sy-subrc = 0.
DELETE li_promo.
ENDIF.
ENDLOOP.