2017-02-02 8 views
0

私は先月の最後の値を取得したい(ユニバーサル、1月だけではない)sqlで先月の日付句を設定する方法は?

どのように条件を設定できますか?今は今月はうまくいくが、私は結果が欲しい。

あなたは、現在の日付から1ヶ月subtructする必要が
SELECT  MAX(v.timestamp) AS Date, 
      MAX(v.value) AS Stanje, 
      v.tag_id, t.prik_sifr, t.tag_name 
FROM  dbo.tag_values AS v INNER JOIN 
      dbo.typ_tag AS t ON v.tag_id = t.id 
    WHERE  (t.prik_sifr IS NOT NULL) AND (t.unit = 'M3') AND 
     (DATEPART(YEAR, v.timestamp) = DATEPART(YEAR, SYSDATETIME())) AND 
     (DATEPART(MONTH, v.timestamp)= DATEPART(MONTH, SYSDATETIME())) GROUP BY v.tag_id, t.prik_sifr, t.tag_name) 

答えて

0

SELECT  MAX(v.timestamp) AS Date, 
      MAX(v.value) AS Stanje, 
      v.tag_id, t.prik_sifr, t.tag_name 
FROM  dbo.tag_values AS v INNER JOIN 
      dbo.typ_tag AS t ON v.tag_id = t.id 
    WHERE  (t.prik_sifr IS NOT NULL) AND (t.unit = 'M3') AND 
     (DATEPART(YEAR, v.timestamp) = DATEPART(YEAR, DATEADD(MONTH, -1 SYSDATETIME()))) AND 
     (DATEPART(MONTH, v.timestamp)= DATEPART(MONTH, DATEADD(MONTH, -1 SYSDATETIME()))) 
GROUP BY v.tag_id, t.prik_sifr, t.tag_name) 
関連する問題