Ssas 如何使用mdx查询接收值
如何使用mdx查询接收值。对于此查询,输出值为2.2,但我需要四舍五入到3Ssas 如何使用mdx查询接收值,ssas,mdx,Ssas,Mdx,如何使用mdx查询接收值。对于此查询,输出值为2.2,但我需要四舍五入到3 WITH MEMBER [AssessmentCouting] AS COUNT(NonEmpty ( { ( ([DimAnchorDate].[Anchor Date].[Anchor Date]),
WITH MEMBER [AssessmentCouting] AS COUNT(NonEmpty (
{
(
([DimAnchorDate].[Anchor Date].[Anchor Date]),
([DimAnchorDate].[Calendar Quarter Des].[Calendar Quarter Des]),
([DimAssessment].[AssessmentText].&[167]&[Care Management Follow up Encounter]),
([DimAssessment].[QuestionText].[QuestionText]),
([DimPatient].[Patient Key].[Patient Key]),
([DimPatient].[Full Name].[Full Name])
)
},
{ [Measures].[ProgramAssessmentPatientCnt] }))/10
SELECT [AssessmentCouting] ON 0
FROM [NavigateCube]
试试看:
WITH MEMBER [AssessmentCouting] AS COUNT(NonEmpty (
{
(
([DimAnchorDate].[Anchor Date].[Anchor Date]),
([DimAnchorDate].[Calendar Quarter Des].[Calendar Quarter Des]),
([DimAssessment].[AssessmentText].&[167]&[Care Management Follow up Encounter]),
([DimAssessment].[QuestionText].[QuestionText]),
([DimPatient].[Patient Key].[Patient Key]),
([DimPatient].[Full Name].[Full Name])
)
},
{ [Measures].[ProgramAssessmentPatientCnt] }))/10
MEMBER [AssessmentCoutingRounder] AS
IIF(
[AssessmentCouting] > Int([AssessmentCouting]),
Int([Measures].[AssessmentCouting])+1,
[Measures].[AssessmentCouting]
)
SELECT {[AssessmentCouting],[AssessmentCoutingRounder]} ON 0
FROM [NavigateCube]
你需要像iff(x>cint(x),x+1,x)这样的东西吗?谢谢你的建议,我使用了这样的IIF(AssessmentCouting>cint(AssessmentCouting),ROUND(AssessmentCouting)+1,AssessmentCouting)@DanyloKorostil,但它应该是IIF,对吗?谢谢你的回答,但当AssessmentCouting=2.8时,它只显示2.8,在这种情况下,我需要指出的是,我以前没有提到过这种行为。您必须使用Int()而不是Cint(),它会工作得很好。好的,谢谢@DanyloNo problem,如果您的问题得到解决,请将其标记为已回答。我最终将函数成员行数取整为IIF(AssessmentCouting>Cint(AssessmentCouting),round(AssessmentCouting)+1,round(AssessmentCouting))