ThinkPHP 中mysql where($where)查询的问题 10
ThinkPHP中mysqlwhere($where)查询的问题要求必须用$zy=$n->where($where)->select();表里有个date字段,是表示日期...
ThinkPHP 中mysql where($where)查询的问题
要求必须用 $zy=$n->where($where)->select();
表里有个date字段,是表示日期时间的。格式是 XXXX-XX-XX XX:XX:XX
现在查询条件要这样子 UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(`date`)<846000
也是就查询 date日期时间 距离现在十天内的数据
那我这用数组$where来表达 应该怎么写 展开
要求必须用 $zy=$n->where($where)->select();
表里有个date字段,是表示日期时间的。格式是 XXXX-XX-XX XX:XX:XX
现在查询条件要这样子 UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(`date`)<846000
也是就查询 date日期时间 距离现在十天内的数据
那我这用数组$where来表达 应该怎么写 展开
1个回答
展开全部
您好,使用快捷查询
加入$map['_logic'] = 'OR';
或
$map['id|receiverid'] = array(session('uid'),array('in', implode(",",$idset)),'_multi'=>true);
以上方法等效。
当且与或并存时可以用复合查询,如以下多了一个name
$map['receiverid'] = session('uid');
$map['id'] = array('in', implode(",",$idset));
$map['_logic'] = 'OR';
$where['name'] = 'abc';
$where['_complex'] = $map;
M('message') -> where($where)->select();
将生成:
WHERE (`receiverid` = 1 OR `id` IN ('13','12','10','9')) AND `name`='abc'。
加入$map['_logic'] = 'OR';
或
$map['id|receiverid'] = array(session('uid'),array('in', implode(",",$idset)),'_multi'=>true);
以上方法等效。
当且与或并存时可以用复合查询,如以下多了一个name
$map['receiverid'] = session('uid');
$map['id'] = array('in', implode(",",$idset));
$map['_logic'] = 'OR';
$where['name'] = 'abc';
$where['_complex'] = $map;
M('message') -> where($where)->select();
将生成:
WHERE (`receiverid` = 1 OR `id` IN ('13','12','10','9')) AND `name`='abc'。
追问
你这里面说的我都懂。 你没看清楚我问题。是要筛选时间戳差的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询