作者Trader5566 (一定要昵称吗)
看板C_Sharp
标题[问题] 使用.Compute("max( )")出现诡异结果
时间Sun Sep 8 06:57:31 2013
我有一个datatable,其中一栏是"VOL",使用
int maxLavel = Convert.ToInt32(flow.Compute("max(VOL)", string.Empty));
来取VOL这栏的最大值,
当VOL里面的值是0~6XXX时,
结果得出来的数字只能是"一千以下的最大数",
例如:
VOL
---
6102
940
1642
245
那得到的maxLavel会是940,
接着尝试修改VOL的值,倘若是1642,940,9999,245
却又可以得到9999,
另外,如果同样都是四位数,如1234,4567,6789,9876
也可以得到9876,
所以很纳闷的是,当同时有三位数和四位数去取max的时候,
好像过某个临界值之前,会取一千以下的最大数,过了之後才会取四位数的最大数,
不晓得板上有高手知道这是为甚麽吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.35.182.132
1F:→ regionbbs:你的 VOL 栏位是什麽型别? 09/08 09:00
2F:→ Trader5566:是string 09/08 09:57
3F:→ soup514:你的回覆给了答案 字串排序和数字排序 当然不一样 09/08 10:51
4F:→ soup514:多加1个数字栏位 或select时就先转number 09/08 10:52
5F:→ Trader5566:感恩 来try try看 09/08 11:22