根据我的同事的说法,由于我是使用 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
这是冷融合中左连接的方法吗?只是想确定一下,因为我找不到这方面的好文章。 谢谢
最佳答案
不太确定您在这里要做什么,但是“ColdFusion 中没有左连接?”的答案是:这取决于。当然,您可以在对外部数据库的查询中使用左联接,前提是该数据库支持它(我想不出有哪个关系数据库不支持)。但是您不能在 ColdFusion 查询中进行联接;你必须创造性地利用工会来实现这一目标。
但是,通常可以通过在数据库的初始查询中有效使用联接来消除查询中查询中联接的需要。异常(exception)情况是,如果您需要连接来自完全不同的 ColdFusion 数据源的查询,或者连接到 <cfdirectory>
的结果。 。
关于sql-server - 查询的coldfusion查询中是否有左连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22979292/