Show TOC

HintergrundSelektionstabellen in der WHERE-Klausel Dieses Dokument in der Navigationsstruktur finden

 

Die WHERE-Klausel ist ein Zusatz der Open SQL-Anweisungen SELECT, UPDATE und DELETE und dient der Einschränkung der Wertemenge bei Datenbankzugriffen.

Um eine Selektionstabelle in der WHERE-Klausel zu verwenden, schreibt man

......... WHERE f IN seltab.

Dabei ist f ist der Name einer Datenbankspalte und seltab ist die diesem Feld zugeordnete Selektionstabelle. Die entsprechende Open SQL-Anweisung greift nur auf die Zeilen der Datenbanktabelle zu, in denen der Inhalt des Felds f den in seltab gespeicherten Bedingungen entspricht.

Syntax Syntax

  1. REPORT demo_where_in_seltab.
  2. DATA wa_carrid TYPE spfli-carrid.
  3. SELECT carrid FROM spfli INTO wa_carrid WHERE carrid IN airline.
  4.    WRITE / wa_carrid.
  5. ENDSELECT.
Ende des Codes

Die Selektionstabelle airline ist mit der Spalte CARRID der Datenbanktabelle SPFLI verknüpft. Die WHERE-Klausel der SELECT-Anweisung prüft, ob der Inhalt der Spalte CARRID den in airline abgelegten Bedingungen entspricht.

Ist die Selektionstabelle wie folgt gefüllt:

SIGN

OPTION

LOW

HIGH

I

BT

DL

UA

E

EQ

LH

werden die Datenbankzeilen für alle Fluggesellschaften zwischen DL und UA außer LH eingelesen.