标题:sql多条件语句查询的问题
只看楼主
sex2006
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-4-24
 问题点数:0 回复次数:2 
sql多条件语句查询的问题
数据表里面有字段省份,城市,分类,姓名和公司名称。
现在要实现的查询功能是:
1、默认不选择省份,不选择分类,不输入姓名或公司名称则显示全部信息。
2、有可能用户不选择省份,只选择分类,也不输入姓名或公司名查询。
3、有可能用户选择省份,但不选择分类,也不输入或有可能输入姓名或公司名查询。
4、有可能用户选择省份,选择分类,也输入姓名或公司名查询。
5、有可能用户不选择省份,不选择分类,只输入姓或或公司名查询。

省份是字段为sf,城市为city,分类为kind,姓名为xm,公司为gs
省份表单框名为sheng,城市为city,分类为kind,姓名或公司名都输入在keyword文本框中。
请各位高手帮我写一个SQL语句来实现这些查询。

以下是我自己写的,有错误。多条件情况下出错。
sql="select * from mintian"

if sheng<>"" or kind<>"" or keyword<>"" then
sql=sql&" where"
end if

if sheng<>""then
sql=sql&" sf='"&sheng&"' and city='"&city&"'"
end if

if kind<>"" then
sql=sql&" kind='"&kind&"'"
end if

if keyword<>"" then
sql=sql&" xm ='"&keyword&"' or gs like'%"&keyword&"%'"
end if
sql=sql&" order by id desc"
搜索更多相关主题的帖子: sql 语句 条件 查询 
2008-04-24 14:47
feelingxj
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2008-4-23
得分:0 
这里有解决方法:http://
2008-04-25 00:14
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
得分:0 
说得好复杂啊, 一句话就完了: 每个条件都可有可无
关键是你生成的SQL语句不正确, 你可以打印出来检查啊, 注意的是:
1 如果有两个条件及以上的, 之间要用 AND
2 如果一个条件都没有, 则不需要 WHERE
3 姓名和公司的条件要用 ( ... or ...)
2008-04-25 10:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-210835-1-1.html




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

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