thinkphp mysql ignore_如果使用thinkphp查询数据库忽略不存在的查询条件?
$condition 里面会有时间的条件,这个时间的条件是可选条件,现在就想如果时间条件不存在如何把时间条件给去除?而时间条件存在时,则加上时间条件查询结果?方法一:数组不存在会报错。public static function getHomeworkByStudentId($id, $conditions){$conditions['startTime'] = '2018-09-01';$con
$condition 里面会有时间的条件,这个时间的条件是可选条件,现在就想如果时间条件不存在如何把时间条件给去除?而时间条件存在时,则加上时间条件查询结果?
方法一:数组不存在会报错。
public static function getHomeworkByStudentId($id, $conditions)
{
$conditions['startTime'] = '2018-09-01';
$conditions['endTime'] = '2018-09-02';
$result = self::where('id', '=', $id)
->whereTime('recordTime', '>', $conditions['startTime'])
->whereTime('recordTime', '
->select();
return $result;
}
方法二:如果时间条件不存在,生成sql的时间条件就会变成0就像下面这样:
SELECT * FROM `homework` WHERE `id` = '1' AND ( `recordTime` >= 0 AND `recordTime` <= 0 )
public static function getHomeworkByStudentId($id, $conditions)
{
$conditions['startTime'] = '2018-09-01';
$conditions['endTime'] = '2018-09-02';
$result = self::where('id', ':id')
->whereTime('recordTime', '>=', ':startTime')
->whereTime('recordTime', '<=', ':endTime')
->bind($conditions)
->select();
return $result;
}
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)