Frank (no reg): Abfrageproblem

Beitrag lesen

Hi,

ich habe zwei Tabellen:

Aha, hab ich auch, unter anderem. ;) Und was für eine Datenbank benutzt du? Denn danach unterscheiden sich die Möglichkeiten zur Lösung unter Umständen dramatisch.

Hier mal eine Variante, die zumindest für bzw. auf MS SQL 2005 funktioniert:

  
DECLARE @A1 Table (  
 feld1 varchar(50) NOT NULL  
)  
  
DECLARE @A2 Table (  
 feld1 varchar(50) NOT NULL  
)  
  
INSERT @A1 (feld1) VALUES ('Anton')  
INSERT @A1 (feld1) VALUES ('Berta')  
INSERT @A1 (feld1) VALUES ('Cäsar')  
  
INSERT @A2 (feld1) VALUES ('An')  
INSERT @A2 (feld1) VALUES ('Ber')  
  
SELECT *  
FROM @A1 a  
 LEFT JOIN @A2 b  
  ON SubString(a.feld1, 1, LEN(b.feld1)) = b.feld1  
 WHERE b.feld1 IS NULL  

Ich bin mal davon ausgegangen, dass in Tabelle 2 die Länge der Abkürzungen die Länge des Namens in Tabelle 1 nicht übersteigt ... sonst gibt es einen Fehler :)

Gruss
Frank