簡體   English   中英

DB2 SQL 從日期列中只提取月份和年份

[英]DB2 SQL extract only month and year from date column

我試圖從 MGMOV00F 表按月和年分組 - 日期列是 DTMOMM,嘗試以下語法但仍然出現錯誤:函數年的參數 1 無效,有人幫忙嗎?

在此處輸入圖像描述

您確定要處理實際的日期數據類型嗎?

鑒於WHERE DT01MM > '20160101'

在我看來,您正在處理字符列; 因為 AFAIK DB2 不會像'2016-01-01'那樣隱式地將'20160101'投射到日期。

既然如此,你的任務就很容易了。 只需子串前 6 個字符..

選擇按匹配數排序的月-年計數 (m-yyyy):

SELECT valid_from, COUNT(1) FROM (
    SELECT ( 
        EXTRACT(MONTH FROM valid_from) 
        CONCAT '-' CONCAT
        EXTRACT(YEAR FROM valid_from)
    ) AS valid_from
    FROM some_table NOLOCK
) as s 
GROUP BY s.valid_from 
ORDER BY 2 DESC;

結果:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM