Impressum  |   RSS  |  Registrieren

tsql

Transact SQL – Auswahlanweisung

Die Transact SQL Auswahlanweisungen führen in Abhängigkeit von definierten Bedingungen definierte Operationen durch.

IF-ELSE

Auch TSQL kennt wie viele andere Programmiersprachen die IF-ELSE Anweisung. Das Nachfolgende Beispiel liefert das Maximum zweier Integervariablen zurück.
 

1
2
3
4
5
6
7
8
9
CREATE PROCEDURE Test2( @A INT, @B INT)
AS
  DECLARE @MAXIMUM INT
 
  SET @MAXIMUM = @A
 
  IF @MAXIMUM < @B SET @MAXIMUM = @B 
 
RETURN @MAXIMUM

Dieses Beispiel liefert ebenfalls das Maximum zweier Integervariablen zurück, nutzt dazu aber eine IF-ELSE Anweisung.
 

1
2
3
4
5
6
7
8
9
10
11
12
CREATE PROCEDURE Test3( @A INT, @B INT)
 
AS
  DECLARE @MAXIMUM INT
 
  IF @A < @B
    SET @MAXIMUM = @B 
  ELSE
 
    SET @MAXIMUM = @A
 
RETURN @MAXIMUM

SELECT CASE

Bei der SELECT CASE Anweisung wird ein Ausdruck einmal ausgewertet und mit Konstanten verglichen. Bei Gleichheit werden die Anweisungen abgearbeitet. Nachfolgendes Beispiel gib das Maximum zweier Integervariablen zurück.
 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CREATE PROCEDURE TestCase ( @A INT, @B INT)
AS
  DECLARE @MAXIMUM INT
 
 
  SELECT
    @MAXIMUM = CASE
      WHEN @A > @B THEN @A
      WHEN @A < @B THEN @B
  ELSE
 
    @A
  END
 
RETURN @MAXIMUM