Zum Inhalt springen

Datumsfeld bearbeiten


ostpower

Empfohlene Beiträge

Zuerst mal folgendes, ich hab 2 Date-Spalten, ich möchte jetzt die differenz der beiden datum angezeigt bekommen, also in spalte1 steht 11.05.2008 und in spalte2 steht 14.05.2008, also result will ich dann 3Tage haben, also 3

So jetzt wollt ich mir des mal ausgeben lassen mit:

SELECT

(t1.datum2 - t1.datum1) as Differenz

FROM

tabelle1 t1

Des geht aber net, da kommt "invalid number". Wie kann ich mir des noch ausgeben lassen oder müsst ich mir dann erst ne number-spalte anlegen und das ergebnis der differenz da reinschreiben?

Und dann die 2 komplexere Frage, ich habe Zeitangaben in form von 21D (21 Tage) 3M (3 Monate) 23H ( 23 Stunden) Ich möchte dann in einer spalte nur noch zahlen stehen haben die die stunden angeben, also bei den einträgen mit H müsste nur das H abgeschnitten werden, bei D müsste man *24 rechnen etc. Wie geht des am geschicktesten? Also irgendwie mit regulären ausdrücken oder? Aber ich komm da net weiter, weil ich müsste ja erst mal abfragen sowas wie

where spalte like '%D%' und dann den substring nehmen, damit ich nur die 21 hab und dann mal 24 nehmen, wie pack ich das alles in einen möglichst kompaktes statement?

Link zu diesem Kommentar
Auf anderen Seiten teilen

TO_TIMESTAMP, TO_CHAR und konsorten könnten dir hier helfen.

btw: scheinbar arbeitest häufig mit sehr "dirty workarounds" - DATE in NUMBER und wieder zurück in DATE. das ist grauselich.... ähm suboptimal.

da du hier zuletzt ziemlich viele gleichartigen fragen postest, solltest du dir allenfalls grundlagen zu oracle zulegen; die o'reilly-bücher und OTN (oracle technet) sind gute ausgangsbasis.

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Zuerst mal folgendes, ich hab 2 Date-Spalten, ich möchte jetzt die differenz der beiden datum angezeigt bekommen, also in spalte1 steht 11.05.2008 und in spalte2 steht 14.05.2008, also result will ich dann 3Tage haben, also 3

So jetzt wollt ich mir des mal ausgeben lassen mit:

SELECT

(t1.datum2 - t1.datum1) as Differenz

FROM

tabelle1 t1

Des geht aber net, da kommt "invalid number". Wie kann ich mir des noch ausgeben lassen oder müsst ich mir dann erst ne number-spalte anlegen und das ergebnis der differenz da reinschreiben?

- Hmmm, bei mir geht es...Welches Format haben den deine "Date"-Spalten ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das Format is Date

Geht bei mir...

Guckst du :


SQL*Plus: Release 10.2.0.2.0 - Production on Thu May 8 12:55:47 2008


Copyright (c) 1982, 2005, Oracle.  All Rights Reserved.


Enter password:


Connected to:

Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bit Production

With the Partitioning, OLAP and Data Mining options


SQL> CREATE TABLE testtable

        (ID                             NUMBER,

        datum                          DATE,

        datum_2                        DATE)

 /


Table created.


SQL> INSERT INTO testtable

         VALUES (1, '01-JAN-2008', '04-JAN-2008')

    /


1 row created.


SQL> SELECT (t.datum_2 - t.datum) AS differeenz

      FROM testtable t

    /


DIFFEREENZ

----------

         3


SQL>

Gruss

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...