olap之查询语句(select..from..where)
数据仓库中要进行olap查询,where的使用方法。
比如要查1997年10月1日-1997年12月15日的数据。
microsoft olap MDX Sample #3:
with member [Measures].[Store Sales Last Period] as '([Measures].[Store Sales], Time.PrevMember)'
select
{[Measures].[Store Sales Last Period]} on columns,
{TopCount([Product].[Product Department].members, 5, [Measures].[Store Sales Last Period])} on rows
from Sales
where ?????????
问题点数:91、回复次数:5Top
1 楼l_wind()回复于 2000-04-15 00:03:00 得分 0
where datediff(day,'1997-10-1',date_column)>=0 and datediff(day,'1997-12-15',date_column)<=0
Top
2 楼lbbb()回复于 2000-04-17 22:07:00 得分 0
不对呀?!!Top
3 楼Axiong()回复于 2000-05-23 19:46:00 得分 0
MDX的语法与sql不一样,我给个sample给你吧,自己体会吧
SELECT Measures.MEMBERS ON COLUMNS,
{[Time].[1997]:[1998]} ON ROWS
FROM [Sales]
Top
4 楼Axiong()回复于 2000-05-27 14:53:00 得分 91
我想了好久都没想到完全满足你的要求的语句。但下面基本上可以了。
with member [Measures].[Store Sales Last Period] as '([Measures].[Store Sales], Time.prevmember)'
select {TopCount([Product].[Product Department].members,5, [Measures].[Store Sales Last Period])} on columns,
{[Time].[1997]:[1998]} ON ROWS
from [sales]
where [Measures].[Store Sales Last Period]
Top
5 楼lbbb()回复于 2000-05-28 10:50:00 得分 0
我也看过不少资料,数据仓库如果能完成那样的功能,还不如不用它了。
谢谢你的回答。
希望以后能继续联系。Top




