SQL中的like语句问题

当文本框中有信息是,根据like搜索出信息这样 ”like %内容%“,但是当文本框中没有内容时,可以检索出所有信息,但是现在文本框中没有信息时什么也检索不出,亟待解决,谢谢了!
最新回答
晨曦慕雪

2025-03-30 16:44:30

aaa=" "
if 文本框!="" then
aaa=" where 字段 like %内容%"
end if
sql="select * from 表名"&aaa
设置一个字符串 判断文本框不为空的时候就给字符串赋值查询条件,再把这个字符串加在查询语句后面。 这样当文本框等于空的时候 sql="select * from 表名"&" " 不等于空的sql="select * from 表名"&" where 字段 like %内容%". 注意where前面最好价格空格。 我用的是ASP语言,如果你用别的语言要改if一句的格式和连接符。
浅笑末路繁华

2025-03-30 11:28:39

不需要判断textbox是否有值,因为like '%%'可以查询出所有数据。
//表名假设为tb_admin,有列id,ad_name。
//textbox的id为txt_name,要查询的列假设为ad_name。
public void test()
{
string str="";
str+="select * from tb_admin where ad_name like '%"+txt_name.text.toString()+"%'";
//然后把str当做sql语句进行查询就可以了。
}
不问归期

2025-03-30 17:17:34

where '文本框内容' = '' or 列名 like '%文本框内容%'
也就是在前面再加个条件判断文本框内容是否为空就可以了
--------------------------------------------------------------------------
我的就是用sql直接实现的
如果文本框里的值为空我的这个sql语将是
select * from talbe1 where ''='' or 列名 like '%%'
这样肯定可以查出所有来,也不用在程序里再判断了
雨零

2025-03-30 04:34:45

不用过多的判定,你把需要查询到的字段都用 like%内容% and 另外一个字段 like%内容% 这样就可以了
敷衍丶换来无言的结局ゝ

2025-03-30 10:57:05

直接写
select * from [表名] where [列名] like '%内容%'
你可能漏了单引号