Re: "stink-einfaches" SQL-Statement

Tech-Archive recommends: Speed Up your PC by fixing your registry



Hallo Lars,

Lars Breiter schrieb:
> Hallo NG,
> ein kleines Problem mit einem Statement. Und zwar möchte ich mir von einer
> Tabelle alle Datensätze anzeigen lassen, die NICHT in der anderen vorhanden
> sind. Gleich vorweg: Beide Tabellen sind identisch im Aufbau, nur die Daten
> sind eben anders. Ich hab mir das ganz einfach vorgestellt, etwa so:
>
> \\
> select * from Whitelist
> where Gutscheinnr NOT IN (Select Gutscheinnr FROM Whitelist_1427)
> //
>
> Doch der SQL-Server (2000) bringt mir folgende Fehlermeldung:
> \\
> Server: Nachr.-Nr. 446, Schweregrad 16, Status 9, Zeile 1
> Konflikt der Sortierung für die equal to-Operation kann nicht aufgelöst
> werden.
> //

Die Tabellen sind nur auf den ersten Blick identisch. Offensichtlich
sind die Gutscheinnr-Felder mit einer unterschiedlichen
Sortierreihenfolge (collation) erstellt worden. Das kannst du im
Enterprise-Manager einfach nachprüfen in dem du dir die Eigenschaft
'Kollation' unter 'Tabelle bearbeiten' anguckst. Oder du läßt dir
jeweils ein Tabellenerstellungs-Script erzeugen.

> Kann mir da jemand weiterhelfen?

Wenn du die Tabellen nicht anfassen darfst kannst du auch eine Collation
erzwingen. Häng einfach an den Feldname die gewünschte Kollation an,
also z.B. Gutscheinnr COLLATE Latin1_General_CI_AS

Gruß
Hannes
.



Relevant Pages