以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  关于条件表达式的in运算与like运算  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=43523)

--  作者:yankunhao
--  发布时间:2013/12/9 15:28:00
--  关于条件表达式的in运算与like运算

现在有个想法,比如条件表达式为:

姓名 Like \'李%\'or 姓名like \'伍%\' or 姓名like \'杨%\'

 

如果改为用in的话,是否可行呢?如果可以又应该如何表达?比如能否这样:姓名 in (\'李%\',\'伍%\',\'杨%\')


--  作者:Bin
--  发布时间:2013/12/9 15:29:00
--  
不可以,没有这样的语法.
--  作者:yankunhao
--  发布时间:2013/12/9 15:31:00
--  
以下是引用Bin在2013-12-9 15:29:00的发言:
不可以,没有这样的语法.

那如果OR 的 like比较多的时候,应该如何才会简洁一些呢?


--  作者:Bin
--  发布时间:2013/12/9 15:31:00
--  
没有取巧的办法,只能这样写呢.
--  作者:yankunhao
--  发布时间:2013/12/9 15:38:00
--  
还有谁有更好的办法吗?
--  作者:Bin
--  发布时间:2013/12/9 15:39:00
--  
没有
--  作者:jspta
--  发布时间:2013/12/9 16:36:00
--  
以下是引用yankunhao在2013-12-9 15:28:00的发言:

现在有个想法,比如条件表达式为:

姓名 Like \'李%\'or 姓名like \'伍%\' or 姓名like \'杨%\'

 

如果改为用in的话,是否可行呢?如果可以又应该如何表达?比如能否这样:姓名 in (\'李%\',\'伍%\',\'杨%\')

不要太专研表达式,狐表的表达式最好就用于一些简单的运算和判断,复杂一点的建议用代码。而且表达式列是不存在的,无法被其他表进行引用。


--  作者:逛逛
--  发布时间:2013/12/9 21:27:00
--  
以下是引用yankunhao在2013-12-9 15:28:00的发言:

现在有个想法,比如条件表达式为:

姓名 Like \'李%\'or 姓名like \'伍%\' or 姓名like \'杨%\'

 

如果改为用in的话,是否可行呢?如果可以又应该如何表达?比如能否这样:姓名 in (\'李%\',\'伍%\',\'杨%\')

理论上是可以的,因为数据库也有字符串函数,具体的在帮助的SQL相关中也有介绍。

无非是将  姓名 Like \'李%\'   变成   Left([姓名],1)  in (\'李\')

但像你的案例中取固定字符,应该没有必要。

[此贴子已经被作者于2013-12-9 21:27:59编辑过]