数据按每小时一次保存在数据库中,
目的:按日期将查询日期内的数据显示到msflexgrid表格内
现象:查询日期超过两天时,能按小时显示出来,例如查询09-05-30到 09-05-31能够显示48个数据,但是查询一天时,只显示最后一个数据,例如查询09-05-30,只显示最后一个数据(23时的)。
郁闷很久了。不清楚怎么回事。
intRow = 1
Do While Not rsData.EOF
If rsData.Fields("日期") >= CDate(strStartDate) And rsData.Fields("日期") <= CDate(strEndDate) And blnSlc(rsData.Fields("时"), intHourRx()) Then
msfgData.TextMatrix(intRow, 0) = Format(rsData.Fields("日期"), "yyyy年mm月dd日")
msfgData.TextMatrix(intRow, 1) = Format(rsData.Fields("时"), "00")
For i = 2 To UBound(strFieldRx) + 1
msfgData.TextMatrix(intRow, i) = rsData.Fields(Right$(strFieldRx(i - 1), Len(strFieldRx(i - 1)) - 3))
If Left$(msfgData.TextMatrix(intRow, i), 1) = "." Or Left$(msfgData.TextMatrix(intRow, i), 2) = "-." Then
msfgData.TextMatrix(intRow, i) = Format$(msfgData.TextMatrix(intRow, i), "#0.##")
End If
Next i
rsData.MoveNext
intRow = intRow + 1
msfgData.AddItem ""
Else
rsData.MoveNext
End If
Loop
If intRow <= 1 Then
MsgBox "数据库内无该时间段的记录数据!"
Exit Sub
End If
msfgData.RemoveItem (intRow)
intRow = intRow - 1
tts = intRow
msfgData.Col = 0 '排序
msfgData.ColSel = 1
msfgData.Sort = 5 '一般升序
For i = 0 To msfgData.Cols - 1
msfgData.ColAlignment(i) = 4 '设置所有单元格文字居中
Next i
msfgData.TopRow = intRow
dbData.Close
Erase intHourRx
sbrMain.Panels(1) = "记录总数:" & intRow
i = i + 1
Loop 'Next i
End If
目的:按日期将查询日期内的数据显示到msflexgrid表格内
现象:查询日期超过两天时,能按小时显示出来,例如查询09-05-30到 09-05-31能够显示48个数据,但是查询一天时,只显示最后一个数据,例如查询09-05-30,只显示最后一个数据(23时的)。
郁闷很久了。不清楚怎么回事。
intRow = 1
Do While Not rsData.EOF
If rsData.Fields("日期") >= CDate(strStartDate) And rsData.Fields("日期") <= CDate(strEndDate) And blnSlc(rsData.Fields("时"), intHourRx()) Then
msfgData.TextMatrix(intRow, 0) = Format(rsData.Fields("日期"), "yyyy年mm月dd日")
msfgData.TextMatrix(intRow, 1) = Format(rsData.Fields("时"), "00")
For i = 2 To UBound(strFieldRx) + 1
msfgData.TextMatrix(intRow, i) = rsData.Fields(Right$(strFieldRx(i - 1), Len(strFieldRx(i - 1)) - 3))
If Left$(msfgData.TextMatrix(intRow, i), 1) = "." Or Left$(msfgData.TextMatrix(intRow, i), 2) = "-." Then
msfgData.TextMatrix(intRow, i) = Format$(msfgData.TextMatrix(intRow, i), "#0.##")
End If
Next i
rsData.MoveNext
intRow = intRow + 1
msfgData.AddItem ""
Else
rsData.MoveNext
End If
Loop
If intRow <= 1 Then
MsgBox "数据库内无该时间段的记录数据!"
Exit Sub
End If
msfgData.RemoveItem (intRow)
intRow = intRow - 1
tts = intRow
msfgData.Col = 0 '排序
msfgData.ColSel = 1
msfgData.Sort = 5 '一般升序
For i = 0 To msfgData.Cols - 1
msfgData.ColAlignment(i) = 4 '设置所有单元格文字居中
Next i
msfgData.TopRow = intRow
dbData.Close
Erase intHourRx
sbrMain.Panels(1) = "记录总数:" & intRow
i = i + 1
Loop 'Next i
End If
另,好像楼主的结贴率有低哦。
至于结贴率低,我一共提问了3,4次,结果没有一个问题有有价值的回答的。怎么结贴?白送分?
毕竟我来这里提问,是想获得帮助的。
select * from 表名 where 日期字段 between '2009-5-30 00:00:00' and '2009-5-31 23:59:59'
'数据库为ACCESS:
select * from 表名 where 日期字段 between #2009-5-30 00:00:00# and #2009-5-31 23:59:59#
结帖可以选择无满意结帖的