gpt4 book ai didi

struct - 如何循环查询数据并插入结构?

转载 作者:行者123 更新时间:2023-12-01 09:43:07 25 4
gpt4 key购买 nike

我有应该插入到结构中的查询数据。在循环数据时,每个值都应该分配给匹配的列。以下是查询数据示例:

    REC_ID  NAME    STATUS      TYPE    YEAR
1 01 PARIS Approved 1 2019
2 06 AUSTIN Inactive 3 2017
3 48 LONDON Approved 2 2018
4 43 ROME Inactive 5 2019
5 61 DUBLIN Inactive 4 2019

这些数据应该被组织成如下所示:

1
REC_ID 01
NAME PARIS
STATUS Approved
TYPE 1
YEAR 2019
2
REC_ID 06
NAME AUSTIN
STATUS Inactive
TYPE 3
YEAR 2017
3
REC_ID 48
NAME LONDON
STATUS Approved
TYPE 2
YEAR 2018
4
REC_ID 43
NAME ROME
STATUS Inactive
TYPE 5
YEAR 2019
5
REC_ID 61
NAME DUBLIN
STATUS Inactive
TYPE 4
YEAR 2019

我试图用这个函数得到想要的数据格式:

function formatData(qryData) {
local.fnResult = structNew();
local.fnData = structNew();

if(qryData.recordcount){
for(row in qryData) {
for(column in qryData.columnList) {
local.strRec = structNew();
structInsert(strRec, column, row[column]);
local.fnData[qryData.currentrow] = strRec;
}
}
}

writeDump(fnData);
}

这是我的结果的样子:

1
REC_ID 01
2
REC_ID 06
3
REC_ID 48
4
REC_ID 43
5
REC_ID 61

我使用 ColdFusion 11 cfscript 语法。如果有人可以帮我解决这个问题,请告诉我。谢谢。

最佳答案

您的列列表循环存在问题,您正在为每一列创建一个新结构,并在下一个循环中重置。

这个循环应该改变

for(column in qryData.columnList) {
local.strRec = structNew();
structInsert(strRec, column, row[column]);
local.fnData[qryData.currentrow] = strRec;
}

看起来像

local.strRec = structNew();
for(column in qryData.columnList) {
structInsert(strRec, column, row[column]);
}
local.fnData[qryData.currentrow] = strRec;

关于struct - 如何循环查询数据并插入结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56378932/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com