Where-Bedingung

Getting started ... Alles für einen gelungenen Start.
8 Beiträge • Seite 1 von 1
8 Beiträge Seite 1 von 1

Where-Bedingung

Beitrag von Fools (ForumUser / 20 / 0 / 0 ) »
Hallo,

ich möchte bei meiner Select-Anweisung eine bestimmte Where-Bedingung einbauen, die mir erlaubt alle Daten in meine interne Tabelle einzulesen, die mit dem Eintrag "VOG:" (beim Feld maktg) anfangen.
Kann mir da vielleicht jemand behilflich sein. Wie müßte die Wherezeile ausschauen?

Danke.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Kowi (ForumUser / 28 / 0 / 0 ) »
Hallo,

das müßte dann in etwa so aussehen:

Code: Alles auswählen.

...
WHERE
  maktg LIKE 'VOG:%'
...
Gruß,
Kowi

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo,

alternativ kann man auch eine RANGE-Tabelle anlegen, was aber zugegebenermaßen mehr Aufwand bedeutet, aber etwas besser zu lesen ist.

Code: Alles auswählen.

DATA:
  lr_maktg TYPE RANGE OF maktg WITH HEADER LINE.
lr_maktg-sign   = 'I'.
lr_maktg-option = 'CP'. "contains pattern '*+'
lr_maktg-low    = 'VOG:*'. "ACHTUNG: Platzhalter '*' und '+'
APPEND lr_maktg FROM lr_maktg.

SELECT ...
       WHERE maktg IN lr_maktg "mit Operator IN
       ...
@Fools
bitte beachte, dass in SQL als Zeichen für eine beliebige Zeichenkette das Prozentzeichen '%' benutzt wird. Als Platzhalter für ein einzelnes Zeichen dient in SQL der Unterstrich '_'.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Fools (ForumUser / 20 / 0 / 0 ) »
Vielen Dank für eure Hilfe.
Hat geklappt.

Beitrag von Fools (ForumUser / 20 / 0 / 0 ) »
Eine Frage hätte ich dann doch noch:

Ist es auch möglich die Zeichenkette 'VOG:' und gleich nach dem Doppelpunkt der Inhalt einer Variable oder der Inhalt eines Feldes einer internen Tabelle anzuhängen?

Bsp.: 'VOG:VARIABLE' oder 'VOG:it_tab-xyz'

Wie müsste man das programmieren damit ABAP das dann auch so richtig interpretiert (also erst Zeichenkette 'VOG:' und dann Inhalt eines Felder) ?

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
dazu benutzt man i.d.R. CONCATENATE

Code: Alles auswählen.

DATA:
  l_maktg TYPE maktg.

CONCATENATE
  'VOG:'
  >variable<
  INTO l_maktg.
*  SEPARATED BY space. "wenn mit Leerzeichen gewünscht
Bei Verwendung der RANGE-Tabelle ist für lr_maktg-option 'EQ' zu benutzen und der gesuchte Text in lr_maktg-low zu stellen und bitte den APPEND nicht vergessen. ;)
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Kowi (ForumUser / 28 / 0 / 0 ) »
Fools hat geschrieben:Eine Frage hätte ich dann doch noch:

Ist es auch möglich die Zeichenkette 'VOG:' und gleich nach dem Doppelpunkt der Inhalt einer Variable oder der Inhalt eines Feldes einer internen Tabelle anzuhängen?

Bsp.: 'VOG:VARIABLE' oder 'VOG:it_tab-xyz'

Wie müsste man das programmieren damit ABAP das dann auch so richtig interpretiert (also erst Zeichenkette 'VOG:' und dann Inhalt eines Felder) ?

Bei meinem Lösungsvorschlag müßtest du eine Hilfsvariable nehmen, in der du die Werte zusammensetzt (über Concatenate) und die du dann im Select benutzt, bei ereglams Lösung könntest du die Werte in das Feld Low schieben.

Wenn du genau den Wert haben möchtest, dann solltest du auch kein LIKE benutzen, da dies langsamer als ein genauer Vergleich ("=") ist.

Gruß,
Kowi

Beitrag von Gast ( / / 0 / 3 ) »
Nochmals Danke an euch Beiden.

Seite 1 von 1

Vergleichbare Themen

6
Antw.
2136
Views
WHERE Bedingung
von cali » 04.04.2006 12:39 • Verfasst in ABAP® Core
3
Antw.
1789
Views
Nachrichtenart Bedingung
von SAPDIDI2 » 18.01.2007 11:28 • Verfasst in ABAP® Core
2
Antw.
10328
Views
Select where Bedingung mit @
von Niels » 11.12.2015 10:11 • Verfasst in ABAP® für Anfänger
6
Antw.
3837
Views
Join Bedingung
von christof » 17.12.2014 19:00 • Verfasst in ABAP® für Anfänger
5
Antw.
3557
Views
Index in WHERE - Bedingung
von Gast » 13.10.2004 16:18 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Updates der Daten, Fehlermeldung
vor 21 Stunden von Egzon gelöst 1 / 47
Wie benutze ich COMMIT WORK richtig
vor 2 Tagen von msfox 17 / 429

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Updates der Daten, Fehlermeldung
vor 21 Stunden von Egzon gelöst 1 / 47
Wie benutze ich COMMIT WORK richtig
vor 2 Tagen von msfox 17 / 429

Unbeantwortete Forenbeiträge

Updates der Daten, Fehlermeldung
vor 21 Stunden von Egzon 1 / 47
Zwischensumme Adobe Forms
vor 5 Wochen von Lucyalison 1 / 269
Group Items auf einer Filterbar
letzen Monat von Bright4.5 1 / 321