主权项 |
一种多维数据模型访问方法,其特征在于,所述的方法包括:接收用户输入的语句,并对所述语句进行解析,其中,所述语句的结构如下:select 查询内容1,查询内容2,…from 查询对象1,查询对象2,…[filter 维度过滤条件1,维度过滤条件2,…][where 综合过滤条件1,综合过滤条件2,…];将所述语句的查询对象及查询对象过滤条件转化成数据查询引擎能够接收的多维数据模型查询对象;根据所述的多维数据模型查询对象查询数据仓库,生成查询结果对象,具体包括:分析所述多维数据模型查询对象,根据所述多维数据模型查询对象的维度、度量及过滤条件信息构建内存语法树;分析上述内存语法树,根据所述的内存语法树生成子查询块;根据所述的子查询块生成SQL查询对象;对SQL查询对象进行拼接,生成总体的查询语句;其中,所述多维数据模型查询对象中包括对业务定义的时期数及时点数;对所述语句进行解析包括:当所述的语句包含词法错误时,对语法错误的原因及语法错误的位置进行提示;当所述的语句包含语法错误时,对查询内容、查询对象和过滤条件书写的位置错误,以及三者之间不匹配之处进行语义层面的校验,并对语义错误的原因和语义错误的位置进行提示。 |