hur.cn - 华软网

 热门搜索

判断数据窗口中某列等于某个值时是否存在重复,高手帮忙

  作者:未知    来源:网络    更新时间:2018/10/20
我想判断数据窗口中某列等于某个值时是否存留重复,高手帮助
------华软网友回答------
什么意思?
------华软网友回复------
哦,,,
你是说某列中的数据是否有重复??

如果列名为aa
long ll_n1,ll_n1
string ls_aa
for ll_n1=1 to dw_1.rowcount()
   ls_aa=dw_1.getitemstring(ll_n1,"aa")
   ll_n1=dw_1.find("aa='"+ls_aa+"'",1,dw_1.rowcount())
   if ll_n1<>ll_n2 then
     messagebox("提醒","数据重复,行:"+string(ll_n1)+";"+string(ll_n2))
   end if
next

//思绪是先循环,再查找,不过效率较低,请其余高人指点
------华软网友回复------
string ls_msg
string ls_exp

ls_exp = 'Evaluate("Sum(if(c_2 = ~'' + Trim(sle_1.Text) + '~' , 1, 0))", 0)'
ls_msg = dw_1.Describe(ls_exp)

MessageBox(string(ls_msg), ls_exp)

c_2 是字符型
sle_1 输入值

ls_msg 是重复数
------华软网友回复------
Describe + Evaluate = 一切皆有可能
------华软网友回复------
是某列中的数据是否有重复,而且是找针对某个值的重复,只需判断
------华软网友回复------
例如我想判断列TB_CLUM=1是否有重复
------华软网友回复------
那么简单的代码看不明白?


string ls_msg
string ls_exp

ls_exp = 'Evaluate("Sum(if(TB_CLUM=1, 1, 0))", 0)'
ls_msg = dw_1.Describe(ls_exp)

MessageBox(string(ls_msg), ls_exp)



ls_msg > 0 的时候就说明有值,而且其值是重复个数

效率极高,效果极好

     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。