不能命令数据。当我运行下面的SQL我得到的日期格式设置的方式,我需要它:SQL Server 2008中 - 使用格式化的日期
SELECT
SUBSTRING(CONVERT(VARCHAR(8), convert(datetime, [Tran_Date], 103), 3), 4, 5) AS 'Date',
SUM([TRAN_AMOUNT]) as 'Amount'
FROM [TRANSACTIONS]
group by SUBSTRING(CONVERT(VARCHAR(8), convert(datetime, [Tran_Date], 103), 3), 4, 5)
order by SUBSTRING(CONVERT(VARCHAR(8), convert(datetime, [Tran_Date], 103), 3), 4, 5)
但结果是不正确的01/14是前12/13因为不得不转换为字符串,以获得MM/YY格式。
01/14 4159.52
12/13 24231.60
当我由公司或集团更改顺序,这样的数据是一个日期数据类型我得到的错误:
TRANSACTIONS.Tran_Date" is invalid in the ORDER BY clause because it is not contained in either an aggregate function or the GROUP BY clause
我敢肯定,这必须是一个巨大的问题,但我可以” Ť似乎发现了什么。有没有办法解决它?
怎么样,如果你继续GROUP BY,因为它是,并且只能通过以'订单变更ORDER BY [Tran_Date]'? –
然后我得到TRANSACTIONS.Tran_Date“在ORDER BY子句中无效,因为它不包含在聚合函数或GROUP BY子句中错误 –