webForumDet fria alternativet

Gruppera efter YYMM från talformat

3 svar · 342 visningar · startad av wazid

wazidMedlem sedan maj 2001156 inlägg
#1

Hej

Nedanstående Select är fungerande.
Men jag skulle vilja få till så den grupperade resultatet månadsvis.
Datumet ligger (tråkigt nog) lagrat som decimal.
Vi pratar SQL2000.
Tacksam för lite hjälp....

SELECT 
SUM(Statoil_orderrader_DL.Pris) AS priset, 
SUM(Statoil_orderrader_DL.KVANT) AS antal, 
Statoil_orderrader_DL.Artikelnr, 
Intranet_AS400.dbo.MITMAS.MMITDS, 
Intranet_AS400.dbo.MITMAS.MMITCL 
FROM 
Statoil_orderrader_DL INNER JOIN Intranet_AS400.dbo.MITMAS ON
Statoil_orderrader_DL.Artikelnr = Intranet_AS400.dbo.MITMAS.MMITNO
WHERE 
((Statoil_orderrader_DL.knr_statoil = '"&statoilknr&"') OR
(Statoil_orderrader_DL.knr_statoil = '"&statoilknr_ny&"')) AND 
Statoil_orderrader_DL.Datum BETWEEN " & startdatum & " AND " & stopdatum & " 
GROUP BY Statoil_orderrader_DL.Artikelnr,
Intranet_AS400.dbo.MITMAS.MMITDS, 
Intranet_AS400.dbo.MITMAS.MMITCL 
HAVING (Intranet_AS400.dbo.MITMAS.MMITCL IN ('101', '102', '103', '105 '))

UNION 
SELECT 
SUM(Intranet_AS400.dbo.OSBSTD.UCSAAM) AS priset, 
SUM(Intranet_AS400.dbo.OSBSTD.UCIVQT) AS antal, Intranet_AS400.dbo.OSBSTD.UCITNO,
Intranet_AS400.dbo.MITMAS.MMITDS,
Intranet_AS400.dbo.MITMAS.MMITCL 
FROM Intranet_AS400.dbo.OSBSTD INNER JOIN Intranet_AS400.dbo.MITMAS
ON Intranet_AS400.dbo.OSBSTD.UCITNO = Intranet_AS400.dbo.MITMAS.MMITNO 
WHERE (Intranet_AS400.dbo.OSBSTD.UCCUNO =  '"&kundnr&"') AND
Intranet_AS400.dbo.OSBSTD.UCIVDT BETWEEN " & startdatum & " AND " & stopdatum & " 
GROUP BY Intranet_AS400.dbo.OSBSTD.UCITNO,
Intranet_AS400.dbo.MITMAS.MMITDS, 
Intranet_AS400.dbo.MITMAS.MMITCL
HAVING (Intranet_AS400.dbo.MITMAS.MMITCL IN ('101', '102', '103', '105 ')) 
ORDER BY MMITDS;
emissionMedlem sedan dec. 19996 721 inlägg
#2

På vilket sätt är datumet lagrat som decimal? En Unix-timestamp?

wazidMedlem sedan maj 2001156 inlägg
#3

I de två tabellerna som det finns är det "float" i den ena och "decimal" i den andra.
Det borde givetvis varit annat format, men.....

emissionMedlem sedan dec. 19996 721 inlägg
#4

Jo, men hur är det lagrat? Om man lagrar ett datum som float eller decimal så måste man ha en omvandlingsstrategi. Hur lagras t.ex. "2005-11-21"?

127 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)