14. Juli 201015 j Hallo zusammen, ich möchte mir aus einer Tabelle "Vertreterumsatz" die Umsatzdaten der einzelnen Vertreter für das Gesamte Jahr anzeigen lassen. Die Tabelle besteht aus (Mandant, Periode, Vertreter, Roherloes, Umsatz). Wie kann ich, mir den Umsatz eines Verteter nicht Periodenbezogen, sonder für das komplette Jahr anzeigen lassen? So sieht mein Ergebnis aus: 2010007 Helmut Schön 10000,00 2010006 Helmut Schön 25000,00 2010006 Inge Meisel 30000,00 usw. Ich hätte allerdings gerne folgendes Ergebnis: 2010 Helmut Schön 35000,00 2010 Inge Meisel 30000,00 usw. Wäre nett wenn mir jemdan helfen könnte, weil ich mich mit SQL-Abfragen leider nur sehr wenig auskenne. Danke
14. Juli 201015 j Ich habe ein ähnliches Problem. Es gibt ein string-Feld in der Datenbank in dem der Monat und das Jahr so drin stehen: 199503. Nun möchte ich es aber auf dem Textfeld so sehen 1995/03. Wie drücke ich das mit SQL aus? Zu dem ersten Problem... Kannst du da nicht einfach die FieldLenght auf 4 begrenzen?
14. Juli 201015 j Ich habe ein ähnliches Problem. Es gibt ein string-Feld in der Datenbank in dem der Monat und das Jahr so drin stehen: 199503. Nun möchte ich es aber auf dem Textfeld so sehen 1995/03. Wie drücke ich das mit SQL aus? Zu dem ersten Problem... Kannst du da nicht einfach die FieldLenght auf 4 begrenzen? Hallo. ihr habt beide eine Designfehler in eurer Datenbank. Datumswerte dürfen NUR mit Typ DATE gespeichert werden, alles andere ist Unsinn. Um das Problem jeweils nun konkret zu lösen, müsstet ihr eure Datenbankversion bekanntgebebn, da sich die Lösung je nach verwendetem System unterscheidet Gruss
14. Juli 201015 j Ich arbeite mit dem SQL Management Studio 2005 also mySqL. In MySQL wäre dies die LEFT - Funktion. Ein kurzer Blick in die Doku : MySQL :: MySQL 5.5 Reference Manual :: 11.5 String Functions Gruss
14. Juli 201015 j Das ist doch die Antwort auf die erste Frage. Ich will aber zwischen 1995 und 03 ein / haben. Im MOment ist es ja nur 199503
14. Juli 201015 j Das ist doch die Antwort auf die erste Frage. Ich will aber zwischen 1995 und 03 ein / haben. Im MOment ist es ja nur 199503 - Einfach eine Kombination LEFT und RIGHT plus ein CONCAT_WS für das "/" ? Habe jetzt gerade keine MYSQL am laufen, um es dir auszuschreiben... Gruss
14. Juli 201015 j Super Danke ! So habe ich es jetzt lösen können: Select Left (Feldname, 4) + ' / '+ RIGHT (Feldname, 2) AS 'Gewünschter Feldname' from Tabellenname
14. Juli 201015 j Um das Problem jeweils nun konkret zu lösen, müsstet ihr eure Datenbankversion bekanntgebebn, da sich die Lösung je nach verwendetem System unterscheidet Ok, mein Fehler hätte euch natürlich ein paar mehr Informationen geben müssen, ich arbeite mit MSSQL 2005. Ich konnte meine Frage auch mitlerweile, dank unserem Programmierer, lösen. Bevor die Frage jetzt aufkommt, warum unser Programmierer es nicht macht...a) ich soll/muss mich damit beschäftigen und ist er mit anderen Projekten beschäftigt. Wir haben es mit SubString(Cast ...) gelöst. Hier noch der entsprechende Code: Select SubString(Cast([StatVKVertreter].[Periode] As [varchar]), 1, 4) As [Jahr], [Vertreter].[Matchcode], Sum([StatVKVertreter].[Umsatz]) As [Umsatz] From [StatVKVertreter] With(ReadUncommitted) Inner Join [Vertreter] With(ReadUncommitted) On [StatVKVertreter].[Mandant] = [Vertreter].[Mandant] And [StatVKVertreter].[Vertreter] = [Vertreter].[Vertreternummer] Where [StatVKVertreter].[Mandant] = [$System:Mandant] Group By SubString(Cast([StatVKVertreter].[Periode] As [varchar]), 1, 4), [Vertreter].[Matchcode] Jetzt habe ich allerdings eine weitere Frage. In der Darstellung habe ich in Spalte 1 Jahre, in Spalte 2 Vertreter in der Spalte 3 die Umsätze. Beispiel: Jahr Vertreter Umsatz 2010 Müller 10000 2010 Giesel 25000 Ist es möglich bzw. wie kompliziert ist es, das Ergebnis so darzustellen: Jahr Müller Giesel 2010 10000 25000 Also alle Vertreter nebeneinander und unterhalb der Vertreter die Umsätze. Danke schon mal für eure Hilfe.
15. Juli 201015 j Du willst quasi ne Matrixtabelle daraus machen, ne? Das geht bei MSSQL 2005 mit dem Pivot Befehl. --> Verwenden von PIVOT und UNPIVOT
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.