关于Match函数在SQL语句中的使用
在做数据窗口查询中一般我使用Describe('DataWindow.Table.Select')先取得当前数据窗口的Select语句,然后再用Modify()来修改条件,例如:String ls_dwsql,ls_sql,ls_code
ls_dwsql=dw_1.Describe('DataWindow.Table.Select')
ls_code='abc'
ls_sql+=" And SubString(dg_code,1,"+String(Len(ls_code))+")='"+ls_code+"'"
dw_1.Modify('DataWindow.Table.Select="'+is_dwsql+ls_sql+'"')
dw_1.Retrieve()
当然原来建DataWindow中已经有了条件在里面,这样Retrieve出来的记录是dg_code前面包函abc字符的记录。
但如果数据窗口已经Retrieve出记录,用Find或者Filter的时候,可以使用Match()函数,这样即使abc不在前面,在任意位置,只要字段中的内容包函abc即为符合条件,但在SQL语句中能不能使用Match()函数呢?
如果我把
ls_sql+=" And SubString(dg_code,1,"+String(Len(ls_code))+")='"+ls_code+"'"
改为
ls_sql+=" And Match(dg_code,'"+ls_code+"')"
这样就取不到记录,请教高手,SQL语句中能不能使用Match()函数,如果不能使用,那如何象百度网站一样,能把内容包函符合的字符即能搜索出来?
页:
[1]