2017-02-09 97 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