我有一个名为“客户”的表
客户表格位于以下列
CompanyName varchar(100)
ProductName varchar(100)
CreatedDate datetime
Salesprice money
我在客户表
中有以下数据CompanyName (column) - ProductName (column) - CreatedDate (column) - Salesprice (column)
A B 2015-01-02 00:00:00.000 419,10
C D 2014-04-20 00:00:00.000 30,10
A B 2014-01-02 00:00:00.000 60,00
C D 2015-04-20 00:00:00.000 540,00
我想选择如下数据。我需要通过CreatedDate订购,而不是像
那样CreatedDate 2014
CreatedDate 2015
CreatedDate 2014
CreatedDate 2015
结果必须如下(2014-2015订购)
A B 2014-01-02 00:00:00.000 60,00 (This is 2014)
A B 2015-01-02 00:00:00.000 419,10 (This is 2015)
C D 2014-04-20 00:00:00.000 30,10 (This is 2014)
C D 2015-04-20 00:00:00.000 540,00 (This is 2015)
问题:
如何选择客户表
第一个2014年日期比2015年日期(如果存在超过2016年等)如果 CompanyName 相同且 ProductName 相同< / strong>喜欢上面的结果?
答案 0 :(得分:4)
您需要做的是在查询中添加ORDER BY。
SELECT * from customers
ORDER BY CompanyName, ProductName, CreatedDate;
更新:
SELECT CompanyName, ProductName, CreatedDate, ROW_NUMBER() OVER (PARTITION BY YEAR(CreatedDate)
ORDER BY YEAR(CreatedDate)) as rownumber
FROM customers
ORDER by rownumber, YEAR(CreatedDate)