>  기사  >  백엔드 개발  >  关于where like

关于where like

WBOY
WBOY원래의
2016-06-23 13:26:171424검색

$s="%".addcslashes($uid, '%_')."%";return DB::fetch_all('select * from %t where uid like %s limit %d,%d',array($this->_table,$s,$start,$perpage));


上面的一段代码 可以查询出 关于UID是某位数字的用户全部信息

请问下 在这段代码里加点什么 可以是调用出来的信息 按信息ID的从大到小“desc”排序?


回复讨论(解决方案)

$s="%".addcslashes($uid, '%_')."%";
return DB::fetch_all('select * from %t where uid like %s  order by id desc limit %d,%d',array($this->_table,$s,$start,$perpage));

order by id desc

$s="%".addcslashes($uid, '%_')."%";
return DB::fetch_all('select * from %t where uid like %s  order by id desc limit %d,%d',array($this->_table,$s,$start,$perpage));



你的回答是正确的。感谢。

我还想追问下 在这段代码里 怎么添加排除语法? 比如uid >1 

$s="%".addcslashes($uid, '%_')."%";
return DB::fetch_all('select * from %t where uid like %s  and uid>1 order by id desc limit %d,%d',array($this->_table,$s,$start,$perpage));

$s="%".addcslashes($uid, '%_')."%";
return DB::fetch_all('select * from %t where uid like %s  and uid>1 order by id desc limit %d,%d',array($this->_table,$s,$start,$perpage));



最后个问题 还是关于这个的 

怎么在这段代码里 添加多运算的排除语法? 
比如 发布日期变量为 time  有效期变量为day  当前时间变量为STAMP
怎么排除time+86400*day > STAMP  把这个运算加入里面?

$s="%".addcslashes($uid, '%_')."%";
return DB::fetch_all('select * from %t where uid like %s and uid>1 and  time+86400*day>STAMP order by id desc limit %d,%d',array($this->_table,$s,$start,$perpage));

$s="%".addcslashes($uid, '%_')."%";
return DB::fetch_all('select * from %t where uid like %s and uid>1 and  time+86400*day>STAMP order by id desc limit %d,%d',array($this->_table,$s,$start,$perpage));



但是STAMP 是当前时间戳的时间  数据库中并未录入 不能成立啊。。 
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.