以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于此表的统计 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=48119) |
||||
-- 作者:gaoyong30000 -- 发布时间:2014/3/23 16:23:00 -- 关于此表的统计
刊物名称 出版日期 页码 版面 添加一列(次数)
其中 统计过程中出版日期 页码 刊物名称 版面相同的话 只统计一次 最终统计出 各报纸打了多少版次的广告!
[此贴子已经被作者于2014-3-23 16:24:02编辑过]
|
||||
-- 作者:lsy -- 发布时间:2014/3/23 16:47:00 -- 相似的问题,楼主问过几次了,而且对于别人的回复,也没给个反馈:回复的对,还是不对呢? |
||||
-- 作者:gaoyong30000 -- 发布时间:2014/3/23 17:30:00 -- 之前几个都没给出解决方案,我现在就是想要个具体的示例 因为这种统计以后要经常用 麻烦各位了!!!!!!!!!!!!! |
||||
-- 作者:lsy -- 发布时间:2014/3/23 17:45:00 --
[此贴子已经被作者于2014-3-23 18:02:49编辑过]
|
||||
-- 作者:gaoyong30000 -- 发布时间:2014/3/24 0:18:00 -- 多谢了a~~~~~~~~ |
||||
-- 作者:gaoyong30000 -- 发布时间:2014/3/24 16:25:00 --
我模仿了下 改了一下代码 但是出现一个问题
Dim cmd As New SQLCommand
我想实现 各竞争对手打了多少版次的广告!
但是出错 此主题相关图片如下:1.png [此贴子已经被作者于2014-3-24 16:28:12编辑过]
|
||||
-- 作者:lsy -- 发布时间:2014/3/24 16:43:00 -- 第一次做你这个,就出现上面的错误提示,换一个表,例如订单表,就没问题。 |
||||
-- 作者:gaoyong30000 -- 发布时间:2014/3/24 16:51:00 -- 奇怪呢 用你之前的代码没错 我加了一列就有问题 这是您之前的代码 Dim cmd As New SQLCommand cmd.C cmd.CommandText = "Select 刊物名称,出版日期,页码,版面,\'\'As 次数 From {保健品竞品明细}" Dim t As Table = e.Form.Controls("Table1").Table t.StopRedraw t.DataSource = cmd.ExecuteReader() t.DataTable.DataRows.Clear() Dim vals As List(Of String) = DataTables("保健品竞品明细").GetValues("刊物名称","刊物名称 Is Not Null") msgbox(1) For Each val As String In vals Dim arys As List(Of String()) = DataTables("保健品竞品明细").GetValues("刊物名称|出版日期|版面|页码","刊物名称 = \'" & val & "\' and 出版日期 Is Not Null And 版面 Is Not Null And 页码 Is Not Null") Dim r As Row For Each ary As String() In arys r = t.AddNew() r("刊物名称") = ary(0) r("出版日期") = ary(1) r("版面") = ary(2) r("页码") = ary(3) Next r = t.AddNew() r("次数") = arys.Count Next t.ResumeRedraw |
||||
-- 作者:lsy -- 发布时间:2014/3/24 17:13:00 -- 那就看“竞争对手”这一列,有什么古怪的字符。 |
||||
-- 作者:gaoyong30000 -- 发布时间:2014/3/24 17:43:00 -- 解决了 麻烦了~~~~~~~ Dim cmd As New SQLCommand cmd.C cmd.CommandText = "Select 竞争对手,刊物名称,出版日期,页码,版面,\'\'As 次数 From {保健品竞品明细}" Dim t As Table = e.Form.Controls("Table1").Table t.StopRedraw t.DataSource = cmd.ExecuteReader() t.DataTable.DataRows.Clear() Dim vals As List(Of String) = DataTables("保健品竞品明细").GetValues("竞争对手","竞争对手 Is Not Null") msgbox(1) For Each val As String In vals Dim arys As List(Of String()) = DataTables("保健品竞品明细").GetValues("竞争对手|刊物名称|出版日期|版面|页码","刊物名称 = \'" & val & "\' And 竞争对手 Is Not Null and 出版日期 Is Not Null And 版面 Is Not Null And 页码 Is Not Null") Dim r As Row For Each ary As String() In arys r = t.AddNew() r("竞争对手") = ary(0) r("刊物名称") = ary(1) r("出版日期") = ary(2) r("版面") = ary(3) r("页码") = ary(4) Next r = t.AddNew() r("次数") = arys.Count Next t.ResumeRedraw 红色部分应该改成 竞争对手 |