Benutzer mit den meisten Antworten
Abfrage mit Wenn... Dann...

Frage
-
Hallo Zusammen,
Ich habe eine grosse Tabelle mit Auftragsdaten. Ich möchte eine Abfrage machen, bei der ein bestimmtes Feld (DeliveryName) mit dem Wert eines anderen Feldes angezeigt wird wenn es NULL ist. Ich weiss es klingt etwas komisch aber es handelt sich hier um Adressdaten die nicht richtig abgefüllt wurden. Leider habe ich mit SQL nichts weiter zu tun.
Es soll vereinfacht so aussehen:
Wenn Feld(DeliveryName) = Null Dann Feld(DeliveryName) = Feld(DeliveryAddress)
Das wäre Schritt 1.
In Schritt 2 soll wenn es möglich ist von Feld(DeliveryAddress) nur ein bestimmter Teil in Feld(DeliveryName) angezeigt werden.
Das ganze Dient nur zu Auswertungszwecken. Die Tabelle soll nicht geändert werden.
Ich hoffe ihr könnt mir weiterhelfen.
Danke im Voraus!
Gruss genzo
Antworten
-
Hi,
SELECT Feld1, Feld2, ISNULL( DeliveryName, DeliveryAddress ) AS DeliveryName FROM Tabelle
wenn Du einen Aliasnamen vergibst, kannst Du problemlos den Namen der gewünschten Spalte verwenden.
Das SSMS zeigt die Inhalte leider nicht mit Zeilenumbruch an. Du kannst die aber dennoch ermitteln.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort vorgeschlagen Ionut DumaModerator Montag, 6. Januar 2014 11:55
- Als Antwort markiert genzo89 Montag, 6. Januar 2014 12:32
Alle Antworten
-
Hi,
das geht recht einfach mit:
SELECT Feld1, Feld2, ISNULL( DeliveryName, DeliveryAddress ) FROM Tabelle
Bzgl. deines zweiten Schritts müsste man wissen, was derzeit in DeliveryAddress steht, was davon angezeigt werden soll und an welchen Kriterien Du festmachen willst, welcher Teil des Inhalts für die Anzeige herangezogen werden soll.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
- Bearbeitet Stefan FalzModerator Freitag, 3. Januar 2014 15:29
- Als Antwort vorgeschlagen Christoph Muthmann Montag, 6. Januar 2014 08:53
-
Hi Stefan,
Danke für deine schnelle Antwort und entschuldige das späte Feedback.
Die Abfrage funktioniert super aber eine Frage hätte ich noch dazu. Im Ergebnis der Abfrage wird eine neue Spalte erstellt. Ist es auch möglich das es keine neue Spalte erstellt und in der bestehenden Angezeigt wird?
Zum zweiten Schritt ist zu sagen das es Adressen sind und von denen soll nur die erste Zeile mit dem Namen in das Feld (DeliveryName) übernommen werden. Leider weiss ich nicht wann ein Zeilenumbruch stattfindet da ich es nur in einer Zeile sehe.
Gruss Genzo
-
Hi,
SELECT Feld1, Feld2, ISNULL( DeliveryName, DeliveryAddress ) AS DeliveryName FROM Tabelle
wenn Du einen Aliasnamen vergibst, kannst Du problemlos den Namen der gewünschten Spalte verwenden.
Das SSMS zeigt die Inhalte leider nicht mit Zeilenumbruch an. Du kannst die aber dennoch ermitteln.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort vorgeschlagen Ionut DumaModerator Montag, 6. Januar 2014 11:55
- Als Antwort markiert genzo89 Montag, 6. Januar 2014 12:32
-
Hallo Genzo,
Wenn Dir die Antwort von Stefan geholfen hat, dann bitte markiere diese als Antwort.
Danke und Gruss,
Ionut
Ionut Duma, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip„Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.