Avatar billede lbaad Nybegynder
24. maj 2006 - 10:06 Der er 10 kommentarer og
1 løsning

Discoverer spørgsmål

Hej

Jeg har en julian date, som jeg gerne vil spørge på i Discoverer, men jeg kan ikke få programmet til at makke ret.

Jeg laver en beregning:
TO_DATE(Days Day,'J')

og så forsøger jeg at lave en between mellem de 2 beregninger, men det virker ikke. Skriver noget med, at datatypen ikke er korrekt.

Nogen der har nogle gode idéer

Mvh
Lars
Avatar billede pgroen Nybegynder
24. maj 2006 - 11:28 #1
Mener du ikke "to_char(sysdate,'J')" ?
Avatar billede lbaad Nybegynder
24. maj 2006 - 12:00 #2
både ja og nej.

Min kolonne hedder Days day og er en julian date. Det er denne, som jeg skal kunne søge på...
Avatar billede pgroen Nybegynder
24. maj 2006 - 12:48 #3
Hvis din kolonne virkelig hedder Days Day (Det er muligt, der er et eller andet discoverer-halløj, jeg ikke forstår :-) skal du referere den som "Days Day", altså med dobbeltplinger.

to_date("Days Day",'J')

(Bemærk at "dobbeltpling-notationen" er case-sensitiv...)
Avatar billede lbaad Nybegynder
24. maj 2006 - 12:53 #4
Nu har jeg skrevet det sådan her:
Days day >= TO_DATE('Sales Fact.Days Day','J')

, men så får jeg en fejl:
"Et af funktioneargumenterne indeholder en ukorrekt datatype: >=

Derefter kan jeg kun trykke OK, og så skal jeg annullere, for at komme ud af vinduet.
Avatar billede lbaad Nybegynder
24. maj 2006 - 12:55 #5
Hvis jeg prøver at skrive TO_DATE("Sales Fact.Days Day",'J') bytter programmet det automatisk ud med TO_DATE('Sales Fact.Days Day','J')
Avatar billede pgroen Nybegynder
24. maj 2006 - 13:48 #6
Hmpf.

Enten forstår jeg ikke en sk.d af hvad der foregår i Discoverer (Hvilket er meget sandsynligt), eller også har din database en ret besyndelig navnestandard...

Lad os prøve syntaxen af i SQL*Plus:

SQL> CREATE TABLE "Sales Fact" ("Days Day" NUMBER);

Table created.

SQL> INSERT INTO "Sales Fact" ("Days Day") VALUES (to_char(sysdate,'J'));

1 row created.

SQL> SELECT to_date("Sales Fact"."Days Day",'J') dato
  2        FROM "Sales Fact"
  3        WHERE "Sales Fact"."Days Day" > 0;

DATO
---------
24-MAY-06
Avatar billede lbaad Nybegynder
24. maj 2006 - 14:44 #7
Det vil min database også sige mig.

Det er når jeg skal lave en rapport, at jeg ikke kan få den til at makke ret. Det SQL udtryk kan jeg også godt få til at gå op.

Det er nok bare discoverer som er sær.
Avatar billede Slettet bruger
25. maj 2006 - 02:19 #8
Kan dit problem være at du har mellemrum mellem Days og Date ?

iøvrigt: Discoverer er efter min mening et lorte program, vi (på arbejde) droppede det for mange år siden, fordi brugerne ikke kunne finde ud af at joine de korekte kolonner så de fik altid for mange gengangere i deres udtræk, eller ingenting
Avatar billede Slettet bruger
25. maj 2006 - 02:20 #9
sorry mellem Days og Day - selvfølgelig
Avatar billede lbaad Nybegynder
26. maj 2006 - 08:24 #10
Det kan godt være, men det er ikke noget jeg selv skriver. det er noget der kommer til at stå automatisk, når jeg har valgt den kolonne.

Hvis i ikke bruger discover, hvad bruger i så istedet. Synes nemlig heller ikke det er særlig smart
Avatar billede lbaad Nybegynder
26. maj 2006 - 13:53 #11
Nåh løsningen var åbenbart at skrive TO_DATE(Days Day,'J') i elementfeltet, og så lave en ny parameter til datoen.

Takker for inputs
/Lars
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester