AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL Datum umwandeln?!?
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Datum umwandeln?!?

Ein Thema von plautzer · begonnen am 15. Feb 2005 · letzter Beitrag vom 17. Feb 2005
Antwort Antwort
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#1

SQL Datum umwandeln?!?

  Alt 15. Feb 2005, 17:58
Datenbank: Interbase • Zugriff über: IbStoredProc, IBDataSet
Hi,

ich möchte die datensätze aus der tabelle, nach dem datum sotiert, auf verschiedene stringgrids verteilen. Daher möchte ich das datum, besser gesagt das jahr, auslesen um herauszubekomme wieviel tabellen ich brauche. Ich möchte gleich doppelte Datums (Jahr) verhindern, aber wie machen ich das?

Select distinct ABLESEDATUM, ABLESE_NR from tabelle Kann ich das format so ändern, dass man nur das jahr betrachtet?

Plautzer
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#2

Re: SQL Datum umwandeln?!?

  Alt 15. Feb 2005, 18:43
Moin,

Hier die gesuchte Funktion :
 EXTRACT(YEAR FROM ABLESEDATUM) Tschüss,
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#3

Re: SQL Datum umwandeln?!?

  Alt 15. Feb 2005, 18:56
Ich danke dir,

wie benutzte ich aber diese funktion?

So funktioniert sie nicht:

Select distinct EXTRACT(YEAR FROM ABLESEDATUM), ABLESE_NR from ABRECHNUNG Es kommt die Fehlermeldung; ibdataset1: Das feld 'Ablesedatum' wurde nicht gefunden.

Plautzer
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#4

Re: SQL Datum umwandeln?!?

  Alt 15. Feb 2005, 20:50
Im Prinzip genau so wie Du geschrieben hast.

Unter Umständen noch ein as AUSGABEJAHR hinzufügen um dem Feld einen Namen zu geben und im Feldeditor der Query-Kompo entsprechend anpassen.

Durch die Verwendung einer Funktion im Select (z.B. SUM oder auch extract) geht der eigentliche Feldname flöten und wenn Du diesen im Feldeditor der Komponente explizit angegeben hast, kommt es zu einem Fehler.

Ich hoffe jedenfalls mal, dass das der Grund ist.

Tschüss,
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#5

Re: SQL Datum umwandeln?!?

  Alt 16. Feb 2005, 15:28
Hi,

es funzt!
Ich hatte vergessen das feld 'ablesedatum' aus dem ibdataset zu löschen.

Wie mach ich es aber das sich das DISTINCT nur auf das ablesejahr bezieht, falls ich mehrere spalten auslesen will?

Select Distinct ... As Ablesejahr, Nr, Name etc. So werden die doppelten einträge bei nr und name auch weggestrichen, wie verhindere ich das?

Dank dir.

Plautzer
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#6

Re: SQL Datum umwandeln?!?

  Alt 16. Feb 2005, 15:51
Hi,

Zitat von plautzer:
Wie mach ich es aber das sich das DISTINCT nur auf das ablesejahr bezieht, falls ich mehrere spalten auslesen will?
Gar nicht
Gegeben sei folgende Tabelle :
Code:
Tabelle 1

NR    NAME       DATUM
========================
1      ABC         1/1/1980
2      XYZ         1/1/1980
Du willst alle drei Felder haben, aber jedes Jahr soll nur einmal vorkommen, richtig ?

Was soll er Dir denn bei der oben angegebenen Tabelle zurückgeben :
1,ABC,1980
oder doch eher
2,XYZ,1980
????

Die Entscheidung kann er wohl nicht für Dich treffen. Deshalb gilt DISTINCT "global" für alle Felder im SELECT.

Tschüss,
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
plautzer

Registriert seit: 23. Aug 2003
172 Beiträge
 
#7

Re: SQL Datum umwandeln?!?

  Alt 17. Feb 2005, 10:28
Achso,

kleiner Denkfehler meinerseits

Dank dir!

Plautzer
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz