以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请教一个排列组合的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=12547) |
||||
-- 作者:kevin -- 发布时间:2011/9/6 23:44:00 -- 请教一个排列组合的问题 表A有“代码”列 (例如:a,b,c,c,c2,v4,b5……) 表B有“参数”列并且有许多行数据(例如有:11.2、11.6C、1.4H2、……………………) 表C有“型号”列有多行数据(例如:A1、B4、B8、……)
要求表D的“产品代码”列以表A“代码”列为开头,与表B的“参数”列、与表C的“型号”列组合,能组合多少就多少。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/9/7 7:54:00 -- Dim xhs As List(of String) = DataTables("表A").GetUniqueValues("代码 Is Not Null","代码") |
||||
-- 作者:kevin -- 发布时间:2011/9/7 10:51:00 -- 狐爸,可能我表达的意思不到位,导致你给的代码出现二个问题,就是无何止的进行“组合”动作,最终软件自动退出… 第二个问题:并没有真正进行组合,
表A有“代码”列 (例如:a,b,……) 表B有“参数”列并且有许多行数据(例如有:第一行是:11.2、第二行:是11.6C、第三行:1.4H2、……………………) 表C有“型号”列有多行数据(例如:第一行:H1.1、第二行:T.3S、第三行:3-B8、……)
要求表D的“产品代码”列以表A“代码”列为开头,与表B的“参数”列、与表C的“型号”列组合,能组合多少就多少。
组合形式如:a 11.2 H1.1 … b 11.6C T.36 …… ……
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/9/7 11:23:00 -- 打开这个文件:
在命令窗口执行下面的代码:
Dim ss1 As List(of String) = DataTables("表A").GetUniqueValues("第一列 Is Not Null","第一列") |
||||
-- 作者:rcsy001 -- 发布时间:2011/9/7 11:24:00 -- 是不是必须按 代码+参数+型号 这个顺序 如果是: select a.代码+b.参数+c.型号 as 组合 from {表A} a,{表B} b, {表C} c |
||||
-- 作者:kevin -- 发布时间:2011/9/7 12:03:00 -- 谢谢你来看我的问题,你的问题:“是的,必要按照那上面的顺序进行组合! |
||||
-- 作者:kevin -- 发布时间:2011/9/7 12:25:00 -- 谢谢狐爸,如何让这个代码所组合出来的数据显示到表D的第一列中? |
||||
-- 作者:don -- 发布时间:2011/9/7 12:36:00 -- Dim ss1 As List(of String) = DataTables("表A").GetUniqueValues("第一列 Is Not Null","第一列")
Dim ss2 As List(of String) = DataTables("表B").GetUniqueValues("第一列 Is Not Null","第一列") Dim ss3 As List(of String) = DataTables("表C").GetUniqueValues("第一列 Is Not Null","第一列") DataTables("表D").DataRows.Clear For Each s1 As String In ss1 For Each s2 As String In ss2 For Each s3 As String In ss3 Dim r As Row = Tables("表D").AddNew() r("第一列") = s1 & "." & s2 & "." & s3 Next Next Next |