| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1239 人关注过本帖
标题:请问怎样实现多字段查询
只看楼主 加入收藏
calla127
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-8-7
收藏
 问题点数:0 回复次数:8 
请问怎样实现多字段查询
比如表单上有5个可以填写的查询条件text1、text2、text3、text4、text5,想实现其中两个或多个组合查询。
要是用or的话,就不符合条件了;其他值为空的条件和有值的用and连接 不久没有符合条件的记录了。
不知说得清不清楚,请问怎么实现?
搜索更多相关主题的帖子: 字段 查询 
2006-08-15 14:30
啸凡
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:1356
专家分:885
注 册:2006-2-22
收藏
得分:0 
奇怪,查询条件除了用Or,And 连接外,还有其他方式吗?我想,关键是在于各条件之间的组合关系,也就是如何使用括号的问题了。
如:((条件1 and 条件2)or (条件3 and 条件4)) and 条件5 ……

两人行已有我师……
2006-08-15 14:42
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:0 
以下的代码看对你的查询有没有用。
cExprL=".T."
IF !EMPTY(THISFORM.TEXT1.VALUE)
cExprL=cExprL+".AND.字段1='"+ALLTRIM(THISFORM.TEXT1.VALUE)+"'"
ENDIF
IF !EMPTY(THISFORM.TEXT2.VALUE)
cExprL=cExprL+".AND.字段2='"+ALLTRIM(THISFORM.TEXT2.VALUE)+"'"
ENDIF
*.......其余的条件
SELECT * FROM 表 WHERE &cExprL

感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2006-08-15 15:03
calla127
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-8-7
收藏
得分:0 
请问楼上".AND.字段1='"和最后的"'"是什么意思?
2006-08-15 20:10
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:0 
假如"字段1"是字符型数据,则查询的时候,比如要查询 字段1='张三' 的记录,'张三'所在位置应该是字符型常量或变量,THISFORM.TEXT1.VALUE的值应该是字符型,属常量的范畴,因此,用一对单引号定界

感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2006-08-15 23:03
lndsqfyq
Rank: 1
等 级:新手上路
帖 子:232
专家分:0
注 册:2006-1-16
收藏
得分:0 
我记得我曾经用过,先把5个text的内容赋给一个数组,然后用一个do case 。。。。endcase 分别使用这五个数组来判断。

2006-08-16 08:38
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:0 
以下是引用lndsqfyq在2006-8-16 8:38:29的发言:
我记得我曾经用过,先把5个text的内容赋给一个数组,然后用一个do case 。。。。endcase 分别使用这五个数组来判断。

这样做也可,但要考虑的情况异常复杂,程序量也大


感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2006-08-16 10:28
calla127
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-8-7
收藏
得分:0 
谢谢大家的帮助。现在我把查询的东西放到临时表里,再用grid显示出来,临时表里的内容没问题,可是grid显示出来只有前5个字段,后面都都显示不出来,请问是为什么?
2006-08-17 12:18
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:0 
(1)有可能用SELECT-SQL你只选择了5个字段。用"SELECT * FROM ..."就可以了。
(2)有可能GRID1某次操作的时候只显示5列,现在你需要显示多列。用THISFORM.GRID1.COLUMNCOUNT=-1就可以了。

感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2006-08-17 15:21
快速回复:请问怎样实现多字段查询
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026041 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved