ich bin gerade total überfragt…
ich habe, vereinfacht ausgedrückt, folgende Abfrage (Rest der Abfrage ist nicht relevant): SELECT AD.Auftrag, AD.Lieferart
FROM dbo.Auftrag as AD
Lieferart kann folgende Werte ausgeben:
Montage Blabla
Lieferung 1
Lieferung 2
Lieferung 3
Abholung Schnickschnack
Ziel ist es, Werte der Spalte Lieferart zu vereinen:
Montage Blabla -> Montage
Lieferung 1, 2 oder 3 -> Lieferung
Abholung Schnickschnack -> Abholung
Habt Ihr eine Idee, ob dies möglich ist? Wenn ja, wie?
Bin leider nicht sooo fit, was SQL betrifft…
Zur Info: Bewege mich im SQL Server Management Studio auf Windows Server 2012 R2
Ich denke, das Problem ist relativ unabhängig von der Datenbank.
Beim Finden/Auswerten von Mustern kann natürlich das eine Regex anders als das andere sein, aber das ist etwas nebensächlich oder?
Schätze das Grundproblem ist ziemlich verbreitet: Eine Kategorienspalte, in die jeder seinen Sch… einträgt und fertig ist das Chaos.
zur Bereinigung:
on-the-fly: baue einen Ausdruck (oder Funktion), die alle Inhalte auf eine definierte Menge eindampft (schwierig, wenn immer neuer Sch… dazu kommt)
offline: Selektiere Wertegruppen, die zu einer Kategorie zusammengefasst werden sollen, individuell mit spezifischen Where Bedingungen und mache darauf ein Update mit nur noch einer Kategorie.
dann, wenn es (mal kurz) sauber ist, kann man das Datenmodell so ändern, dass nur vorgegebene Kategorien akzeptiert werden. Dafür gibt es verschiedene Möglichkeiten, z.B. ein Constraint, der nur bestimmte (Text)werte erlaubt (easy, low impact, weil ja offenbar ein Textfeld hier vorliegt) oder eine Ausgliederung der Kategorie in eine Nachschlagetabelle und Verknüpfung per ID (easy, high impact).
Kein Problem, der (unterbewusste) Gedankengang: “Der Beitrag ist nicht von akretschmer und nicht von mir selbst, also muss es der Fragesteller sein” ist in diesem Forum ja ziemlich naheliegend.