2017-02-15 337 views
-1

计算每月的dateloc,然后从yyyymmdd转换为月份格式。将yyyymmdd转换为月份格式

请看下面的图片。

MS SQL 2008

我使用MS SQL 2008的帮助会做

+0

请忽略图片中的星号(*) – odong

+0

**绝不**将日期存储为字符串/ varchar值。修好桌子!此外,这里被认为是_very_粗鲁的发布数据而不是文本的图像。 –

回答

0
SELECT 
UPPER(DATENAME(M,dateloc))+' '+CONVERT(VARCHAR(50),DATEPART(YEAR,dateloc)) as  Mounth_Year, 
cnt as Total_Count, 
amt as Total_Amount 
FROM 
(SELECT dateloc, count(*) as cnt,sum(amount) as amt FROM datebase.iniatl_table 
GROUP BY dateloc) 

如果量就是金钱这将是确定。字符串尝试总和(转换(金钱,金额))

+0

我得到这个错误“算术溢出错误将表达式转换为数据类型日期时间。” – odong

+0

和金额是int型 – odong

+0

好吧,我明白了。我只需要将dateloc转换为数字。转换(char(8),DateLOC) – odong

0
SELECT 
    CASE 
    WHEN MONTH(CONVERT(DATETIME,DATELOC,112)) = 1 THEN 'January' 
    END + ' ' + CAST(MONTH(CONVERT(DATETIME,DATELOC,112)) AS VARCHAR(100)) 
FROM [TABLE] 
相关问题