Zum Inhalt springen

Inhalte von zusammengesetzten Spaltennamen


CoderboyPB

Empfohlene Beiträge

Hallo

Ich habe folgende Abfrage:

SELECT (SELECT top(1) TaskName FROM Tasks ORDER BY TaskOrder DESC) + 'End' FROM PackageDTC

Dabei gibt die rotmarkierte innere Abfrage den Wert UAT zurück.

Tatsächlich soll also in diesem Fall folgende Abfrage erzeugt werden:

SELECT UATEnd FROM PackageDTC

Aber statt dem INHALT von UAT gibt er den String UAT selber aus, er macht also folgende Abfrage: SELECT 'UATEnd' FROM PackageDTC

Wie kann ich dem SQL Server nun mitteilen, dass ich nicht den String, sondern den INHALT der Spalte UATEnd haben möchte ?

Wäre echt lieb, wenn mir da jemand helfen könnte.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Schau Dir bitte im Handbuch Deines DBMS oder des ODBC Treibers den genauen Syntax an. Es kann sein, dass die Funktion auch anders heißt.

Du musst bei Deiner Query dafür sorgen, dass das Feld existiert. Ebenso kann es je nach DBMS sein, dass die Felder explizit angegeben werden müssen, dann ist Dein Vorhaben nicht möglich. Ebenso muss der Subselect _genau_ einen Datensatz liefern, bei 2 Datensätzen wäre das Ergebnis nicht mehr definiert

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Tja, und genau diese Option habe ich hier nicht ... :P

Lass es mich dir erklären:

Ich soll einen Report für Crystal Reports erstellen, welcher Standardmässig für JEDES Projekt funktioniert.

Es soll quasi nur der Name der Datenbank ausgetauscht werden müssen, wenn man ihn anwendet.

Das Problem ist aber, dass der Name der TaskSpalte von Projekt zu Projekt variiert. Dieser steht aber in der Tabelle Tasks, so, dass dieser (so dachte ich es mir halt) per Unterabfrage 'on the fly' ermittelt werden kann.

OK, nun weiß ich aber weningstens, dass dieser Bericht nicht umsetzbar ist, und muss halt doch für jedes Projekt jeweils den Bericht hartcoden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

OK, nun weiß ich aber weningstens, dass dieser Bericht nicht umsetzbar ist, und muss halt doch für jedes Projekt jeweils den Bericht hartcoden.

Nein das ist so nicht korrekt !

Du kannst beim Aufruf von CR sowohl den SQL String, der als Abfrage hinter dem Report liegt, ebenso wie den Datenbankname über das Viewerobjekt ändern. Dann öffnest Du den Report und Deine Abfrage funktioniert

Als andere Idee bliebe einen View zu erstellen, der Dir die Daten über die dynamische Abfrage liefert, CR siehst als View eine einfache Tabelle, auf der Du dann mit statischem SQL arbeiten kannst

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...