2017-02-09 8 views
0

これは私のクエリです:どのようにカウントしてSQLビューを作成する()

select 
    Sales.SaleID, 
    Sales.StartSaleDate, 
    Sales.EndSaleDate, 
    Sales.SalePercent, 
    COUNT(LessonID) as TotalLesson, 
    Sales.Status, 
    Sales.ExpiredStatus, 
    Sales.SalePrice, 
    Sales.IsSpecial 
FROM 
    Sales 
LEFT JOIN 
    SaleLessons ON SaleLessons.SaleID = Sales.SaleID 
GROUP BY 
    Sales.Status, Sales.IsSpecial, Sales.StartSaleDate, Sales.EndSaleDate, 
    Sales.SalePercent, Sales.SaleID, Sales.ExpiredStatus, Sales.SalePrice 
ORDER BY 
    Sales.StartSaleDate DESC 
+1

どうしたのですか? – McNets

+0

'ORDER BY'を削除 – dnoeth

+1

どのDBMSを使用していますか? Postgres?オラクル? –

答えて

1
create view ViewSchema.ViewName 
    as 
select Sales.SaleID, 
     Sales.StartSaleDate, 
     Sales.EndSaleDate, 
     Sales.SalePercent, 
     COUNT(LessonID) as TotalLesson, 
     Sales.Status, 
     Sales.ExpiredStatus, 
     Sales.SalePrice, 
     Sales.IsSpecial 
from Sales 
LEFT JOIN SaleLessons 
    ON SaleLessons.SaleID = Sales.SaleID 
group by Sales.Status, 
     Sales.IsSpecial, 
     Sales.StartSaleDate, 
     Sales.EndSaleDate, 
     Sales.SalePercent, 
     Sales.SaleID, 
     Sales.ExpiredStatus, 
     Sales.SalePrice 

あなたが本当にビューからデータを抽出するとき、あなたが後でそれを使用することができ、ORDER BY句を必要としません。

また、この件に関する非常に有益な回答があります。https://stackoverflow.com/a/15188437/7119478

関連する問題