因为根据我的同事我不习惯使用coldfusion,所以我们不能继续加入查询的coldfusion查询.所以这就是我们做一个左手连接的"技巧".例:
<cfquery datasource="Intranet" name="GroupStarsGiven">
SELECT execoffice_status, submitterdept, COUNT(*) as 'totalstarsgiven'
FROM CSEReduxResponses
WHERE execoffice_status = 1
GROUP BY execoffice_status, submitterdept
</cfquery>
<cfquery dbtype="query" name="GetTotalStarsGiven">
SELECT *
FROM GroupStarsGiven, GetDepartments
WHERE GroupStarsGiven.submitterdept = GetDepartments.csedept_id
</cfquery>
<cfquery name="joinQuery2" dbtype="query" >
SELECT *
FROM GetTotalStarsGiven
WHERE GetTotalStarsGiven.csedept_id = -1
</cfquery>
<cfset QueryAddRow(joinQuery2)>
<cfquery name="GetUnion2" dbtype="query" >
SELECT *
FROM GetUnion, GetTotalStarsGiven
WHERE GetUnion.csedept_id = GetTotalStarsGiven.csedept_id
UNION
SELECT GetUnion.*, joinQuery2.*
FROM GetUnion, joinQuery2
WHERE GetUnion.csedept_id NOT IN (#ValueList(GetTotalStarsGiven.csedept_id)#)
ORDER BY csedept_name ASC
</cfquery
Run Code Online (Sandbox Code Playgroud)
这是左边加入coldfusion的方法吗?只是想确保,因为我无法找到关于此的好文章.谢谢
我有这个问题(是的很长,努力让它变得更好)
<cfquery datasource="Intranet" name="getHighestDeptAverage">
DECLARE @today DATETIME
SET @today = '2014-04-13'
;with CTE as(
Select d.csedept_name,d.csedept_id, Average = CASE WHEN d.csedept_question5 IS NULL
THEN (Select AVG(((cast(c.rating1 as Float)+ cast(c.rating2 as Float)+cast (c.rating3 as Float)+cast(c.rating4 as Float))/4))
From intranet.dbo.CSEReduxResponses c
Where c.employeedept = d.csedept_id
AND c.execoffice_status > 0
AND month(approveddate) = MONTH(@today))
ELSE (Select AVG(((cast(c.rating1 as Float)+ cast(c.rating2 as Float)+cast (c.rating3 as Float)+cast(c.rating4 as Float)+cast(c.rating5 as Float))/5))
From intranet.dbo.CSEReduxResponses c
Where c.employeedept = d.csedept_id
AND c.execoffice_status > 0
AND month(approveddate) = …Run Code Online (Sandbox Code Playgroud) 我有一个列(cse_dept),它有整数,我只想显示它等于12或39的列.有没有办法做到这一点?
<cfif (#GetCurrentUser.cse_dept# eq '12'39') >
<h1>test</h1>
</cfif>
Run Code Online (Sandbox Code Playgroud)
它没有向我显示错误它只是不按我想要的方式工作.
由于"ColdFusion不支持通过INNER JOIN或OUTER JOIN子句进行连接",我如何能够将这两个查询组合在一起,他们在哪里提供过去2个月的数据?
select starburst_dept_name, starburst_dept_average,MONTHLY_PAST_DATE
from cse_reports_month
where starburst_dept_name is not NULL
and YEAR(MONTHLY_PAST_DATE) = YEAR(GETDATE())
and MONTH(MONTHLY_PAST_DATE) = MONTH(GETDATE())-1
select starburst_dept_name, starburst_dept_average,MONTHLY_PAST_DATE
from cse_reports_month
where starburst_dept_name is not NULL
and YEAR(MONTHLY_PAST_DATE) = YEAR(GETDATE())
and MONTH(MONTHLY_PAST_DATE) = MONTH(GETDATE())-2
Run Code Online (Sandbox Code Playgroud)
我想要一个查询来组合这两个我将如何这样做,以便它可以在ColdFusion中工作?我想要的是比较上个月的starburst_dept_average> starburst_dept_average最近2个月前?
我有
<cfset DateToday = "#now()#" />
<cfdump var = "#DateToday#" />
Run Code Online (Sandbox Code Playgroud)
这给了我:
{ts '2014-04-28 15:37:52'}
Run Code Online (Sandbox Code Playgroud)
如何改变它以给我'2014年4月28日'?我想我必须使用转换为char?