
select * from tablename where name like '%%'
这样的话就是 name 等于任何字符都会被查出,当然所有内容都会出来了。
2、这不是问题,从查询的设计角度看,什么都不输入自然是要匹配所有数据,相反输入了东西就是匹配它了。
*****************
补充:
*****************
如果你想什么都不输入的时候什么也不返回的话方法如下:
在后台写两个sql,类似如下
if ($name == ""){
$exec="select * from tablename where 1=2"
}else{
$exec="select * from tablename where name like '%$name%'"
}
---
以上,希望对你有所帮助。
例子如下:SELCET * FROM T-USER U WHERE CONCAT(U.LASTNAME,U.FIRSTNAME) LIKE '%$LSP_NAME$%'
LASTNAME 字段是姓;
FIRSTNAME字段是名字;
当查询字段为null时,返回结果为null。与concat_ws(...)不同。
如果为多个字段同时进行查询时,使用concat_ws(...)。
select concat_ws(',','11','22','33')
select concat_ws(',','11','22','33',null)都返回11,22,33。
CONCAT_WS() 代表 CONCAT With Separator,是CONCAT()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。
CONCAT()可以连接一个或者多个字符串,CONCAT_WS()可以添加分割符参数。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)