我正在尝试为一项调查编写一个函数,从数据库中提取问题。问题是既有活跃的问题也有不活跃的问题。当有人查看旧调查的结果时,我需要显示较旧的问题。
这是我在 CFC 中尝试的代码:
<cffunction name="getAllQuestions" access="public" returntype="query">
<cfargument name="survey" default=0>
<cfif len(#survey#) gt 0>
<cfquery name="getsdate" datasource="blah.database">
select * from past_survey
where survey_id = #survey#
</cfquery>
<cfreturn getsdate>
</cfif>
<cfquery name="getquestions" datasource="blah.database">
select * from pool_questions
<cfif len(#survey#) eq 0>
where active_flag='Y'
<cfelse>
where <cfqueryparam value="#dateformat
(getsdate.survey_date, "yyyy/mm/dd")#"> BETWEEN start_date AND
end_date
</cfif>
order by qtn_nb
</cfquery>
<cfreturn getquestions>
</cffunction>
#survey#
是表单生成的调查 ID。我想要做的是如果survey
有一个值来运行查询getsdate。然后无论是否survey
有值,第二个查询都会运行。如果没有价值,它应该拉出所有活跃的问题。如果有一个值,那么它应该检查调查日期是否在过去问题的开始日期和结束日期之间。
任何有关如何使这项工作的建议将不胜感激。先感谢您!