当前位置: 首页>>代码示例>>PHP>>正文


PHP DBC::queryOneCell方法代码示例

本文整理汇总了PHP中DBC::queryOneCell方法的典型用法代码示例。如果您正苦于以下问题:PHP DBC::queryOneCell方法的具体用法?PHP DBC::queryOneCell怎么用?PHP DBC::queryOneCell使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DBC的用法示例。


在下文中一共展示了DBC::queryOneCell方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: general

    public static function general($table, $field, $mode = STAT_MODE_DIVISION, $num = 100)
    {
        //通用查詢格式: 對於特定資料表內單一欄位,所有資料的統計數據
        //0: plot data
        //1: 樣本數
        //2: 極小值
        //3: 極大值
        //4: 均值
        //5: 四分位數 array(Q1, Q2, Q3)
        //6:
        $data = array('data' => array(), 'samples' => null, 'min' => null, 'max' => null, 'mean' => null, 'q1' => null, 'q2' => null, 'q3' => null);
        switch ($mode) {
            case STAT_MODE_DIVISION:
                //先辨識人數是否小於$num,小於時要特別處理
                $cnt = DBC::queryOneCell('
					SELECT COUNT(' . $field . ')
					FROM ' . $table . '
					');
                if ($cnt < $num) {
                    $tmpdata = DBC::queryAllRow('
						SELECT ' . $field . '
						FROM ' . $table . '
						ORDER BY ' . $field . ' ASC
					');
                    //延展至$num個資料
                    $i = 0;
                    $step = ($cnt - 1) / $num;
                    do {
                        $index = ceil($step * $i);
                        $data['data'][$i] = $tmpdata[$index][0];
                    } while (++$i < $num);
                } else {
                    $i = 0;
                    $step = $cnt / $num;
                    do {
                        $index = ceil($i * $step);
                        $tmpdata = DBC::queryOneCell("\n\t\t\t\t\t\t\tSELECT " . $field . "\n\t\t\t\t\t\t\tFROM " . $table . "\n\t\t\t\t\t\t\tORDER BY " . $field . " ASC\n\t\t\t\t\t\t\tLIMIT {$index}, 1\n\t\t\t\t\t\t\t");
                        $data['data'][$i] = $tmpdata;
                    } while (++$i < $num);
                }
                $data['samples'] = $cnt;
                $stats = DBC::queryOneRow('
					SELECT MIN(' . $field . '), MAX(' . $field . '), AVG(' . $field . ')
					FROM ' . $table . '
				');
                $data['min'] = $stats[0];
                $data['max'] = $stats[1];
                $data['mean'] = $stats[2];
                //計算四分位數 BEGIN
                $q = array($data['max'] * 0.25, $data['max'] * 0.5, $data['max'] * 0.75);
                for ($i = 0; $i < 3; ++$i) {
                    if (is_int($q[$i])) {
                        $data['q' . ($i + 1)] = DBC::queryOneCell('
							SELECT AVG(' . $field . ')
							FROM ' . $table . '
							ORDER BY ' . $field . ' ASC
							LIMIT ' . $q[$i] . ', 2
						');
                    }
                    if (is_float($q[$i])) {
                        $data['q' . ($i + 1)] = DBC::queryOneCell('
							SELECT ' . $field . '
							FROM ' . $table . '
							ORDER BY ' . $field . ' ASC
							LIMIT ' . ceil($q[$i]) . ', 1
						');
                    }
                }
                //計算四分位數 END
                return $data;
                break;
        }
        return null;
    }
开发者ID:WeishengChang,项目名称:wogap,代码行数:74,代码来源:statsModel.php

示例2: getTotal

 public final function getTotal($filters)
 {
     return DBC::queryOneCell("\n\t\t\tSELECT COUNT(*)\n\t\t\tFROM {$this->table} a\n\t\t\tWHERE {$filters}\n\t\t");
 }
开发者ID:WeishengChang,项目名称:wogap,代码行数:4,代码来源:ImplicitWOGAPModel.php

示例3: getTotal

 public function getTotal($table, $filter)
 {
     return DBC::queryOneCell("\n\t\t\tSELECT COUNT(*)\n\t\t\tFROM {$table}\n\t\t\tWHERE {$filter}\n\t\t");
 }
开发者ID:WeishengChang,项目名称:wogap,代码行数:4,代码来源:ImplicitShow.php


注:本文中的DBC::queryOneCell方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。