wazidMedlem sedan maj 2001156 inlägg Hej
Jag har en tabell med ett fält som är av typen Decimal.
Det innehåller datum av typen 20060202 ! Hur tokigt det än må vara.
Nu vill jag i min Selectfråga gruppera posterna efter månad.
Alltså:
200602
200603
osv.
Jag kan konvertera till Char med
CAST(EGACDT AS CHAR(8))
Sedan vill jag plocka ut de första sex tecknen, men det blir felmeddelande då
SUBSTRING(CAST(EGACDT AS char(8)),1,6)
Jag har även försökt med LEFT, men utan att det fungerar.
Har någon ett tips??
MvH
David
wazidMedlem sedan maj 2001156 inlägg Löste det..
SELECT SUBSTRING(CAST(EGACDT AS Char(8)), 1, 6) AS bokdat
FROM FGLEDG
GROUP BY SUBSTRING(CAST(EGACDT AS Char(8)), 1, 6)
HAVING (SUBSTRING(CAST(EGACDT AS Char(8)), 1, 6) BETWEEN '200503' AND '200603')
ORDER BY SUBSTRING(CAST(EGACDT AS Char(8)), 1, 6) DESC
Det som strulade till det var att det faktiskt i Enterprise managers grid står så här:
SUBSTRING(CAST(EGACDT AS Char(8)); 1; 6)
Om jag skiver så här i Griden
SUBSTRING(CAST(EGACDT AS Char(8)), 1, 6)
får jag ett felmeddeande som säger Invalid Expression.
LarsGMedlem sedan dec. 200012 464 inlägg Posta felmeddelandet, bums.