以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 怎样按汉字或设定的值排序? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91899) |
||||
-- 作者:xujie80 -- 发布时间:2016/10/21 12:31:00 -- 怎样按汉字或设定的值排序? foxtable,sql server对汉字字段默认是按拼音排序的,但在实际工作中,比如说村我想按设定的值排序(顺序是大有、宏丰、烈士,倒序是烈士、宏丰、大有,我想按宏丰、烈士、大有排)
,组按一二三四五六七排序,怎样实现? 这是一个临时表,如果用sort合计列也会排进去,如何处理?
|
||||
-- 作者:cbt -- 发布时间:2016/10/21 13:04:00 -- Dim sz() As String ={"宏丰村","烈士村","大有村"} For i As Integer = 0 To sz.Length-1 DataTables("表A").ReplaceFor("第十列",i,"第一列=\'" & sz(i) & "\'") Next Tables("表A").Sort="第十列" |
||||
-- 作者:xujie80 -- 发布时间:2016/10/22 13:56:00 -- 问题并没有解决,请看项目文件中的窗口 |
||||
-- 作者:y2287958 -- 发布时间:2016/10/22 14:06:00 -- 建个临时列即可 可以上个商业版的例子的
|
||||
-- 作者:有点蓝 -- 发布时间:2016/10/22 14:53:00 -- Dim dict1 As new Dictionary(of String,Integer) dict1.Add("宏丰村",1) dict1.Add("烈士村",2) dict1.Add("大有村",3) Dim dict2 As new Dictionary(of String,Integer) dict2.Add("一组",1) dict2.Add("二组",2) dict2.Add("三组",3) dict2.Add("四组",4) dict2.Add("五组",5) dict2.Add("六组",6) dict2.Add("七组",7) For Each r As Row In Tables("表A").Rows r("第十列") = dict1(r("第一列")) & dict2(r("第二列")) Next Tables("表A").Sort="第十列"
|
||||
-- 作者:xujie80 -- 发布时间:2016/10/22 14:57:00 -- 还是上面的例子,按二楼的方法排序后生成的表组别的顺序仍然是按拼音的。 Dim cj As WinForm.ComboBox = e.Form.Controls("cj") Dim b As New sqlcrossTableBuilder("统计表1","表A") b.filter = "第一列 = \'" & cj.value & "\'" b.hGroups.AddDef("第二列","组别") b.vGroups.AddDef("第三列") b.Totals.AddDef("第三列",AggregateEnum.count) b.OrderByTotal = True b.VerticalTotal = True b.HorizontalTotal = True b.Build Tables("窗口1_Table1").DataSource = DataTables("统计表1") 生成交叉分组表有按某列排序的方法吗?查不到。
|
||||
-- 作者:有点蓝 -- 发布时间:2016/10/22 15:03:00 -- 默认都是按照拼音排序的。参考5楼自己扩展。 |
||||
-- 作者:xujie80 -- 发布时间:2016/10/22 15:17:00 -- 只有想办法生成表后再排序了。 |