I have two tables: foodrequest and employeedetails. I am able to search the records from those tables, by date, based on a "FromDate" and "ToDate" values like this:
<cfset var qryFoodRequest = queryNew("")>
<cfset var localData = structNew()>
<cfif (structKeyExists(Form,"Fromdatepicker") AND isDate(Form.Fromdatepicker) )
AND (structKeyExists(Form,"Todatepicker") AND isDate(Form.Todatepicker) )>
<cfset localData.frmDate = listGetAt(Form.Fromdatepicker,3,'/') & '-' & listGetAt(Form.Fromdatepicker,2,'/') & '-' & listGetAt(Form.Fromdatepicker,1,'/')>
<cfset localData.toDate = listGetAt(Form.Todatepicker,3,'/') & '-' & listGetAt(Form.Todatepicker,2,'/') & '-' & listGetAt(Form.Todatepicker,1,'/')>
</cfif>
<cfquery name="qryFoodRequest" datasource="ebms" cachedWithin = "#createTimeSpan(0,0,0,5)#">
SELECT e.FullName FullName
, e.EmployeeCode EmployeeCode
, e.DesignationName DesignationName
, e.DateOfJoin DateOfJoin
, e.DepartmentName DepartmentName
, e.ManagerName ManagerName
, e.ParentOffice ParentOffice
, f.Requesttype Requesttype
, f.Foodtype Foodtype
, f.ReqDate ReqDate
, f.remarks remarks
FROM foodrequest f INNER JOIN employeedetails e
ON f.EmployeeId = e.empId
<cfif structKeyExists(localData,"frmDate") AND structKeyExists(localData,"toDate")>
AND f.ReqDate between ('#localData.frmDate#') and ('#localData.toDate#')
</cfif>
order by e.empId;
</cfquery>
<cfreturn qryFoodRequest>
But I am not able to search by employee. I.e. If I select any employee from a dropdown list, it will return their records only.
Can anybody help me on this?
Copyright Notice:Content Author:「Madeva Reddy」,Reproduced under the CC 4.0 BY-SA copyright license with a link to the original source and this disclaimer.
Link to original article:https://stackoverflow.com/questions/30771782/how-to-filter-query-results-based-on-selection-from-dropdown-list