Announcement

Collapse
No announcement yet.

DISTINCT und Alternative zu year(datetime)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • DISTINCT und Alternative zu year(datetime)

    Hallo zusammen,

    ich bin auf ein Problem gestoßen, als ich über MS SQL Server 2003 eine Tabelle auslesen lassen will.

    Die Tabelle besteht auf mehreren Spalten: Gesellschaft, Zeit , Kontostand, Bereich und Abrechnung.
    Nun lasse ich die Tabelle hinsichtlich einer Gesellschaft mit gleich bleibendem Bereich und Abrechnung durchsuchen. Soweit kein Problem. Jedoch sind die Einträge, die ich daraufhin ausgegeben bekomme aus mehreren Jahren. Die Auswahl soll sich aber auf ein Kalenderjahr beziehen.
    Die Funktion "year(datetime)" funktioniert nicht, da es sich um keinen Datumswert, sondern einen String handelt. Dachte ich lasse die ersten vier Stellen auslesen und dementsprechend ausgeben, weil das Datenmuster in der Spalte Zeit, wie folgt, aussieht: yyyy.mm z.b. 2011.02. Ich muss also die ersten vier Stellen auslesen können und alle von einem Jahr ausgegeben bekommen.

    Hat jemand eine Idee? Das wäre echt toll!


    Am Rande noch ein anderes Problem: Wenn ich eine Tabelle mit "DISTINCT" auslesen lasse und nach "DISTINCT (Spalte)" sollen noch weitere Parameter folgen, die aber "DISTINCT" unbeachtet lassen soll, wie kann ich dann vorgehen?

    Danke, für jede Unterstützung.

    Mit freundlichen Grüßen

  • #2
    Die ersten 4 Stellen eines Strings kriegst du mit SUBSTRING(string, 1, 4)

    Das mit dem distinct geht nicht.
    Stell dir vor, du hast zwei Datensätze mit den Felder 'Jahr' und 'Wert':
    2011, 1
    2011, 2
    Wenn die Datenbank jetzt ein distinct von 'Jahr' produzieren soll, darf sie nur
    eine Zeile mit 2011 ausgeben und dazu dann einen Wert - aber welchen der beiden, 1 oder 2?

    bye,
    Helmut

    Comment

    Working...
    X