You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ColdFusion多数据源合并:商家信息与营业时间查询结果关联

解决方法

方案1:用结构体缓存营业时间(推荐,不需要QofQ基础)

你可以先把查询到的营业时间按商家ID分组存入结构体,输出商家信息时直接匹配对应ID的营业时间即可,代码修改如下:

<!-- 原有查询代码保持不变 -->
<cfquery name="businesses" datasource="businesses"> 
         SELECT id, bus_name, bus_address, bus_city, bus_phone
         FROM businesses
         WHERE id < 20
</cfquery>
            
<cfscript>
    businessResults=ValueList(businesses.id)
</cfscript>  
            
<cfquery name="hoursopen" datasource="hoursopen"> 
    SELECT *
    FROM hoursopen
    WHERE businessID IN ( 
                        <cfqueryparam 
                            value="#businessResults#" 
                            cfsqltype="CF_SQL_INTEGER"
                            list="yes" 
                            />
                            ) AND dayWeek = dayOfWeek(Now())      
</cfquery>

<!-- 新增:构建商家ID对应营业时间的结构体 -->
<cfset hourMap = {}>
<cfloop query="hoursopen">
    <cfset hourMap[hoursopen.businessID] = hoursopen>
</cfset>

<!-- 合并输出商家信息和对应营业时间 -->
<cfoutput query="businesses">
    <strong>商家ID: #id#</strong><br/>
    商家名称: #bus_name#<br/>
    地址: #bus_address#<br/>
    城市: #bus_city#<br/>
    联系电话: #bus_phone#<br/>
    今日营业时间: 
    <cfif structKeyExists(hourMap, id)>
        #hourMap[id].openTime# - #hourMap[id].closeTime#(时区:#hourMap[id].timeZone#)
    <cfelse>
        暂无录入
    </cfif>
    <hr/>    
</cfoutput>

方案2:使用QofQ(查询的查询)关联两个结果集

如果你需要直接得到合并后的完整查询结果,可以用ColdFusion的QofQ做左连接:

<cfquery name="mergedResult" dbtype="query">
    SELECT b.*, h.timeZone, h.openTime, h.closeTime
    FROM businesses b
    LEFT JOIN hoursopen h ON b.id = h.businessID
</cfquery>

<!-- 直接循环合并后的结果即可 -->
<cfoutput query="mergedResult">
    <strong>商家ID: #id#</strong><br/>
    商家名称: #bus_name#<br/>
    地址: #bus_address#<br/>
    城市: #bus_city#<br/>
    联系电话: #bus_phone#<br/>
    今日营业时间: <cfif isNull(openTime)>暂无录入<cfelse>#openTime# - #closeTime#(时区:#timeZone#)</cfif>
    <hr/>
</cfoutput>

内容的提问来源于stack exchange,提问作者Robert Furst

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 00:54:03