页面上面有一个查询按钮,旁边有两个textbox输入查询的条件,第一个textbox按姓名模糊查询,第二个textbox按地址模糊查询,只在第一个textbox输入值只按姓名查询,只在第二个textbox输入值就按地址查询,两个都输入值就按两个条件查询。请问怎么用一条SQL语句写出来。谢谢了,本人新手请各位高手指教作者: 李荣壮 时间: 2011-11-18 08:05
只按姓名查询: select * from [TableName] where Name='####'
只按地址查询: select * from [TableName] where Address='####'
两个条件一起查询: select * from [TableName] where Name='####' and Address='####'
可以在程序中判断下用户输入的是一个条件还是两个条件, 然后再选择执行哪条SQL语句作者: 李荣壮 时间: 2011-11-18 08:08
干嘛非一条语句写出来, 一条可以写出来吗作者: 朱勋 时间: 2011-11-18 08:49
两个字段在一个表么?在的话一个表查询就好了,没再多表查询,参数化查询,模糊用like作者: 陈涛 时间: 2011-11-18 10:28
通过传参, 把接受的参数 拼接到SQL语句里。作者: 经睿 时间: 2011-11-18 17:01
SELECT * FROM TABLENAME WHERE NAME LIKE '%###%' AND ADDRESS LIKE '%###%'作者: 朱陈伟 时间: 2011-11-18 19:39
姓名查询: select * from [所需查询的表名] where Name='所需查询的条件'
地址查询: select * from [所需查询的表名] where Address='所需查询的条件'
如果需要两个同时查询:select * from [所需查询的表名] where Name='所需查询的条件1' and Address='所需查询的条件2' 作者: 9881008杜鹏 时间: 2011-11-19 05:03
按照姓名模糊查询:SELECT * FROM 表名 WHERE NAME LIKE '***%***'
按照地址模糊查询:SELECT * FROM 表名 WHERE ADDRESS LIKE '***%***'
按照姓名和地址模糊查询:SELECT * FROM 表名 WHERE NAME LIKE '***%***' AND ADDRESS LIKE '***%***'作者: 杨楠 时间: 2011-11-19 16:01
感觉这不是Sql语句的问题吧,是在程序里控制吧
if(string.isnulloremtey(txt1.text)&&string.isnulloremtey(txt2.text))
{messagebox("请输入查询条件");
return;}
else if(string.isnulloremtey(txt1.text))
{只按地址查}
else if(string.isnulloremtey(txt2.text))
{只按姓名查}
else
{一起查。。。}