Coldfusion 如何使用不同的列名集构建结构?
我的cfquery中有两组不同的列。在表单输入字段中,为Coldfusion 如何使用不同的列名集构建结构?,coldfusion,structure,coldfusion-9,cfloop,Coldfusion,Structure,Coldfusion 9,Cfloop,我的cfquery中有两组不同的列。在表单输入字段中,为值保留一组列,为标题保留第二组列。我正在构建服务器端的结构,我希望这两个单独的列。下面是一个例子: <cfquery name="UInfo" datasource="Test"> SELECT TOP 1 u_fname, u_lname, zu_fname, zu_lname FROM Users WITH (NOLOCK) WHERE
值保留一组列,为标题保留第二组列。我正在构建服务器端的结构,我希望这两个单独的列。下面是一个例子:
<cfquery name="UInfo" datasource="Test">
SELECT TOP 1
u_fname,
u_lname,
zu_fname,
zu_lname
FROM Users WITH (NOLOCK)
WHERE u_urid = '0012341'
</cfquery>
<cfloop query="UInfo">
<cfset qryRecs = StructNew()>
<cfloop array="#UInfo.getColumnNames()#" index="columnName">
<cfset qryRecs[columnName]['value'] = UInfo[columnName][CurrentRow]>
<cfset qryRecs[columnName]['title'] = (structKeyExists(UInfo, "z"&columnName)? UInfo[columnName][CurrentRow] : "")>
</cfloop>
</cfloop>
正如您在上面看到的,我的代码也为Z列生成了结构。我不需要这些列的单独结构,它们应该只显示在标题中。我的输出应该是这样的:
U_FNAME
struct
title First Time
value Mark
U_FLAST
struct
title New Customer
value Miller
我不知道如何获得期望的输出。如果有人能帮忙,请告诉我。谢谢大家! 你有这个:
<cfset qryRecs = StructNew()>
在一个循环中。在此之前:
<cfloop query="UInfo">
您有:
<cfset qryRecs = StructNew()>
在一个循环中。在此之前:
<cfloop query="UInfo">
显示您只需在列名循环中的列名上使用if语句即可
<cfif left(columnName, 1) eq "u">
显示您只需在列名循环中的列名上使用if语句即可
<cfif left(columnName, 1) eq "u">
捕捉得好。你对我上面的问题有什么建议吗?谢谢。我真的不明白你想要实现什么,或者你为什么想要实现它,所以我没有任何其他建议。很好。你对我上面的问题有什么建议吗?谢谢。我真的不明白你们想要实现什么,或者你们为什么想要实现它,所以我没有任何其他建议。我也找到了解决办法。唯一的区别是我使用Find(“u”,columNames,0)来检查第一个字母是否是u。我不确定这个解决方案是否会导致任何问题。我也找到了解决方案。唯一的区别是我使用Find(“u”,columNames,0)来检查第一个字母是否是u。我不确定这个解决方案是否会导致任何问题。