从经典 ASP 中的 SQL 数据集为高图表创建多个数组

create multiple arrays from SQL dataset in classic ASP for HighCharts

本文关键字:创建 高图表 数组 数据集 经典 ASP 中的 SQL      更新时间:2023-09-26

我想知道如何将此数据集拆分为多个数组以用作HighCharts折线图中的数据集

下面的 resultSet(0,i) 包含一个日期,resultSet(1,i
) 包含一个值。

我希望能够根据日期的年份;

Year(resultSet(0,i)) 将数据集分解为多个数据集,用于 HighCharts 折线图。 基本上是这样的

if recordDate = Year(resultSet(0,i)) then
           ''populate recordSet1
    recordSet1(i) = resultSet(1,i)
else
          'if the records now have a new date
          'add a year to the recordDate, since they are in chronological order in the resultset
   recordDate = recordDate + 1 
           'do the check on that record now and add it to a new resultSet, then re-enter the loop and populate the new recordSet
    if recordDate = Year(resultSet(0,i)) then
          recordSet2(i) = resultSet(1,i)
    end if
End If

但是我想不出如何动态创建数组名称以便我可以拥有多个记录集。

'Get CurrentYear to Compare Dataset To
dim CurrentYear
CurrentYear = Year(Date)
dim totalYears
dim recordDate
    totalYears = (adoRsChart("yr_count") - 1)
    recordDate = CurrentYear - totalYears
dim dateYearDiff
dim yAxisData()
dim xAxisData()
dim resultSet 
resultSet = adoRsChart.GetRows()
For i = 0 to UBound(resultSet, 2)
    reDim preserve xAxisData(i)
    xAxisData(i) = resultSet(1,i)
    response.write(resultSet(0,i) & "<br/>")
    response.write(resultSet(1,i) & "<br/>")
    response.write(resultSet(2,i) & "<br/>")
    response.write(resultSet(3,i) & "<br/>")
    reDim preserve yAxisData(i)
    yAxisData(i) = "'" &  resultSet(3,i) & "'"
Next

你实际上可以有一个数组数组...

chartData(i,j)(k)

。但我真的不推荐它。除了"无法将我的大脑包裹起来"问题之外,这是耗尽服务器上内存的简单方法。

您可以在循环中生成图表,即只是重用相同的变量吗?