mysql 查询去掉多余零
/*** 指定查询字段* @access public* @param mixed $field 字段信息* @param mixed $format 需要去掉多余0的 decimal字段* @return this∗/publicfunctionfield(this*/public function field(this∗/publicfunctionfield(field,KaTeX pars
·
mysql 查询decimal去掉多余零 0+cast(field as char)
- thinkphp指定查询字段方法增加$format参数
/**
* 指定查询字段
* @access public
* @param mixed $field 字段信息
* @param mixed $format 需要去掉多余0的 decimal字段
* @return $this
*/
public function field($field,$format=null)
{
if (empty($field)) {
return $this;
} elseif ($field instanceof Raw) {
$this->options['field'][] = $field;
return $this;
}
if (is_string($field)) {
if (preg_match('/[\<\'\"\(]/', $field)) {
return $this->fieldRaw($field);
}
$field = array_map('trim', explode(',', $field));
}
if (true === $field) {
// 获取全部字段
$fields = $this->getTableFields();
$field = $fields ?: ['*'];
}
if (isset($this->options['field'])) {
$field = array_merge((array) $this->options['field'], $field);
}
if ($format) {
$castField = [];
if(is_string($format)) $format = explode(',',$format);
if(is_array($format)){
foreach($format as $v){
$asField = str_replace(".","_",$v);
$castField[] = '0+cast('.$v.' as char) AS '.$asField;
}
}
$field = array_merge($field,$castField);
}
$this->options['field'] = array_unique($field);
return $this;
}
更多推荐
已为社区贡献2条内容
所有评论(0)