关于MDX传入时间段查询--【急】

半路和尚 2010-08-23 10:44:18

SELECT
NON EMPTY {([访问日期].[所有],[用户名称].[所有],[菜单名称].[所有])} ON ROWS,
NON EMPTY {([Measures].[访问次数])} ON COLUMNS
from [BASS_BROWSE_LOG]


比如要查询 2010-01-01 至 2010-01-31 段的数据
请问时间怎么传进入?


这样查询只能查询当天的
SELECT
NON EMPTY {([访问日期].[所有].[2010-01-01],[用户名称].[所有],[菜单名称].[所有])} ON ROWS,
NON EMPTY {([Measures].[访问次数])} ON COLUMNS
from [BASS_BROWSE_LOG]
如果按上面的写法会有问题,如果查询时间段为一年的话,那mdx太长了,

查看资料后发现可以这么写:(好像有问题,查询不通过)
SELECT
NON EMPTY {([访问日期].[所有].[2010-01-01]:[访问日期].[所有].[2010-01-31]:,[,[用户名称].[所有],[菜单名称].[所有])} ON ROWS,
NON EMPTY {([Measures].[访问次数])} ON COLUMNS
from [BASS_BROWSE_LOG]



...全文
150 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
anareport 2011-10-12
  • 打赏
  • 举报
回复
注意:下面的Sysdate必须是Schema.xml文件中<Dimension>的一个维度名字要一样
SELECT
NON EMPTY {([访问日期].[所有],[用户名称].[所有],[菜单名称].[所有])} ON ROWS,
NON EMPTY {([Measures].[访问次数])} ON COLUMNS
from [Sysdate][2010-01-01 至 2010-01-31]

WITH MEMBER [Sysdate][statDate1
+ " 至 "
+ statDate2
+ "]"
+ " AS 'sum([Sysdate].["
+ statYear1
+ "].["
+ statMonth1
+ "].["
+ statDay1
+ "]"
+ " :[Sysdate].["
+ statYear2
+ "].["
+ statMonth2
+ "].["
+ statDay2
+ "])'"

sdwbcvbrtcwwww 2010-09-07
  • 打赏
  • 举报
回复
SELECT
NON EMPTY {([访问日期].[所有],[用户名称].[所有],[菜单名称].[所有])} ON ROWS,
NON EMPTY {([Measures].[访问次数])} ON COLUMNS
from [BASS_BROWSE_LOG]
where ~~~(自己加条件,但要注意不能与上面的维度条件重复)
半路和尚 2010-08-23
  • 打赏
  • 举报
回复
修正一下:
SELECT
NON EMPTY {([访问日期].[所有].[2010-01-01]:[访问日期].[所有].[2010-01-31],[,[用户名称].[所有],[菜单名称].[所有])} ON ROWS,
NON EMPTY {([Measures].[访问次数])} ON COLUMNS
from [BASS_BROWSE_LOG]

7,388

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧