【发布时间】:2021-03-28 07:28:28
【问题描述】:
我遇到了这个问题,我认为它与参数有关。我不确定我是否做得正确,但我 90% 确定查询中的参数不正确。所以,有两种形式(短格式和长格式)。
- 短格式就是短格式
- 长格式包括短格式和长格式一起
这是我的查询
SELECT distinct
pid_respiratorfit.FormDimDocId,
pid_respiratorfit.EnrollDate,
pid_respiratorfit.Id,
pid_respiratorfit.FormDimDocInstanceId,
Patient.NEDID,
Patient.PFIRSTNAME,
Patient.PLASTNAME,
dimInputDetail.displayStatement AS DisplayStatement,
dimInputDetail.statement AS Measure,
dimInputDetail.structureID AS StructureID,
dimInputAnswers.Value AS Answers,
dimInputs.comments AS Findings,
dimInputs.ID as FindingsID,
dimDocSectionLayout.SectionTitle AS SectionTitle,
dimDocSectionLayout.[order] as dimDocSectionLayoutOrder,
dimDocSectionLayout.sectionID,
dimDocInputLayout.[order]
FROM pid_respiratorfit INNER JOIN
dimInputDetail RIGHT OUTER JOIN
dimDocInputLayout ON dimInputDetail.ID = dimDocInputLayout.questionID LEFT OUTER JOIN
dimDocSectionLayout ON dimDocInputLayout.sectionID = dimDocSectionLayout.sectionID AND dimDocInputLayout.surveyID = dimDocSectionLayout.surveyID INNER JOIN
dimInstance ON dimInstance.dimDocID = dimDocSectionLayout.surveyID ON pid_respiratorfit.FormDimDocId = dimInstance.dimDocID AND
pid_respiratorfit.FormDimDocInstanceId = dimInstance.ID INNER JOIN
Patient ON pid_respiratorfit.PTIDNum = Patient.PTIDNUM RIGHT OUTER JOIN
dimDocMetaInfo ON dimInstance.dimDocID = dimDocMetaInfo.ID LEFT OUTER JOIN
dimInputsDialogue RIGHT OUTER JOIN
dimInputs ON dimInputsDialogue.DimInputsID = dimInputs.ID ON dimInputDetail.ID = dimInputs.inputID AND dimInstance.ID = dimInputs.dimDocInstanceID AND
dimDocMetaInfo.ID = dimInputs.dimDocID AND dimDocInputLayout.usageCount = dimInputs.usageCount LEFT OUTER JOIN
dimInputAnswers ON dimInputs.ID = dimInputAnswers.dimInputsID LEFT OUTER JOIN
dim_fileUploads ON dimInstance.ID = dim_fileUploads.dimDocInstanceID AND dimDocInputLayout.usageCount = dim_fileUploads.usageCount AND
dimInputDetail.ID = dim_fileUploads.inputID AND dimDocMetaInfo.ID = dim_fileUploads.dimDocID
WHERE pid_respiratorfit.Id = @respfitID AND dimDocSectionLayout.sectionID = @sectionID
ORDER BY dimDocSectionLayout.[order],
dimDocInputLayout.[order];
如果记录只有简表,并且部分 ID 的参数将寻找值“1”,则表格将被成功打印。但是,如果记录具有长格式(也包括短格式)并且那是我现在遇到的问题,则部分 ID 将同时查找值“1”和“2”。但是到目前为止,我不知道如何添加包含短格式和长格式的参数并单独保留短格式值。
【问题讨论】:
标签: sql sql-server-2008 parameters