欲查询数据库中某一字段是否包含一个字符串变量中的所有单个字符(在字段中字符顺序和变量中字符顺序相同,但各字符不一定相邻)

liwei02060168 2008-07-17 11:16:29
现有字符串变量abc,怎么能把数据库行为字段中包含abc这个变量的的记录查询出来?满足的要求:
1.abc是由使用者输入的字符串变量,长度任意;
2.数据库行为字段中可能是asbc、assbc、abssc、asbsc这样的形式,就是a、b、c顺序不变,但不一定是相邻字符(中间可能有任意个字符);

用like加%查询的结果不对,我不知道是否可以采取不查询字符串变量整体,而是查询包含字符串变量中的每一个字符的方法
请教各位前辈!
...全文
121 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lingshao0909 2008-07-21
  • 打赏
  • 举报
回复
那就做个循环,把%加到字符串中,然后再用1楼的方法不就行了
liwei02060168 2008-07-21
  • 打赏
  • 举报
回复
abc是变量,我只是用abc举例一下,不好意思
1.abc是由使用者输入的字符串变量,长度任意; 是使用者输入的字符串变量,长度大于1小于10
熊孩子开学喽 2008-07-18
  • 打赏
  • 举报
回复
楼主先说说明白,你说的这个"abc"到底是变量还是常量.
看你所描述的似乎有些矛盾之处
yangao 2008-07-17
  • 打赏
  • 举报
回复

SELECT * FROM MA_MASTER WHERE CONTENT LIKE '%a%b%c%'

表和字段根据自己情况改下
liwei02060168 2008-07-17
  • 打赏
  • 举报
回复
嗯,但是我说的abc是个字符串变量,是通过vb里面一个list框的多选功能生成的一个字符串
我刚想出来的方法是把这个字符串的字符分别赋值给字符数组的每一位字符,然后一个字符一个字符去比较,先比较第一个,再在第一个的结果里去筛选包含第二个结果的记录...一直到最后一个字符,这个方法有点笨
目前没有发现不正确的地方
请大家帮我想想,这样做是否合理!
CathySun118 2008-07-17
  • 打赏
  • 举报
回复
楼上的方法可以

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧