2017-01-11 92 views
-2

任何人都可以请帮我对下面提到的SQL查询wtite mysql查询吗?mysql行分区

SELECT Customers_Ship_To_Promotions.Customer_Ship_To + Promotions_Materials.Material_Number 
,convert(VARCHAR, Promotions.Amount) 
,Promotions.ID_Promotion 
,row_number() OVER (
     PARTITION BY Customers_Ship_To_Promotions.Customer_Ship_To 
        + Promotions_Materials.Material_Number 
ORDER BY Customers_Ship_To_Promotions.Customer_Ship_To 
        + Promotions_Materials.Material_Number 
     ,Promotions.Amount 
     ) 
FROM Promotions 
INNER JOIN Promotions_Materials ON 
    Promotions.ID_Promotion = Promotions_Materials.ID_Promotion 
INNER JOIN Customers_Ship_To_Promotions ON 
    Promotions.ID_Promotion = Customers_Ship_To_Promotions.ID_Promotion 
WHERE Type_Promotion = '4' 
ORDER BY Customers_Ship_To_Promotions.Customer_Ship_To + Promotions_Materials.Material_Number 
+1

我们会帮你做转换,而不是从头开始为你写。看到这个指导元:http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-简单的SQL查询 – Shadow

回答

0

SELECT @row_number:= CASE WHEN = @customer_no THEN customer_ship_to @row_number + 1 ELSE END AS NUM, @customer_no:= customer_ship_to如customer_ship_to, SALES_ORGANIZATION, id_promotion FROM customer_ship_to_promotions,(SELECT @customer_no:= 0,@ row_number:= 0)as t ORDER BY customer_ship_to;

我被卡在ROW_NUMBER分区,和我上面的查询试图为相同的,我竟要被输出,当我上面的查询集成到主查询它抛出错误