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


PHP SC_Query::setGroupBy方法代码示例

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


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

示例1: findProductIdsOrder

    /**
     * SC_Queryインスタンスに設定された検索条件を元に並び替え済みの検索結果商品IDの配列を取得する。
     *
     * 検索条件は, SC_Query::setWhere() 関数で設定しておく必要があります.
     *
     * @param SC_Query $objQuery SC_Query インスタンス
     * @param array $arrVal 検索パラメーターの配列
     * @return array 商品IDの配列
     */
    function findProductIdsOrder(&$objQuery, $arrVal = array())
    {
        $table = <<<__EOS__
            dtb_products AS alldtl
__EOS__;
        $objQuery->setGroupBy('alldtl.product_id');
        if (is_array($this->arrOrderData) and $objQuery->order == '') {
            $o_col = $this->arrOrderData['col'];
            $o_table = $this->arrOrderData['table'];
            $o_order = $this->arrOrderData['order'];
            $order = <<<__EOS__
                    (
                        SELECT {$o_col}
                        FROM
                            {$o_table} as T2
                        WHERE T2.product_id = alldtl.product_id
                        ORDER BY T2.{$o_col} {$o_order}
                        LIMIT 1
                    ) {$o_order}, product_id
__EOS__;
            $objQuery->setOrder($order);
        }
        $results = $objQuery->select('alldtl.product_id', $table, '', $arrVal, MDB2_FETCHMODE_ORDERED);
        $resultValues = array();
        foreach ($results as $val) {
            $resultValues[] = $val[0];
        }
        return $resultValues;
    }
开发者ID:Rise-Up-Cambodia,项目名称:Rise-Up,代码行数:38,代码来源:SC_Product.php

示例2: findProductCount

    /**
     * SC_Queryインスタンスに設定された検索条件をもとに対象商品数を取得する.
     *
     * 検索条件は, SC_Query::setWhere() 関数で設定しておく必要があります.
     *
     * @param SC_Query $objQuery SC_Query インスタンス
     * @param array $arrVal 検索パラメーターの配列
     * @return array 対象商品ID数
     */
    public function findProductCount(&$objQuery, $arrVal = array())
    {
        $table = <<<__EOS__
           dtb_products AS alldtl JOIN dtb_products_class AS P
                    ON  P.product_id = alldtl.product_id
                    LEFT JOIN dtb_class AS A
                    ON P.classcategory_id1 = A.class_id
                    LEFT JOIN dtb_class AS B
                    ON P.classcategory_id2 = B.class_id
__EOS__;
        $objQuery->setGroupBy('P.product_id, A.name, B.name');
        return $objQuery->get('COUNT(DISTINCT(alldtl.product_id))', $table, '', $arrVal);
    }
开发者ID:snguyenone,项目名称:ec-cube-ja-2.12.6,代码行数:22,代码来源:SC_Product_Ex.php

示例3: lfGetOrderMember

 /** 会員別集計 **/
 function lfGetOrderMember($type, $sdate, $edate, &$objPage, $graph = true)
 {
     list($where, $arrval) = $this->lfGetWhereMember('create_date', $sdate, $edate, $type);
     // 会員集計の取得
     $col = "COUNT(*) AS order_count, SUM(total) AS total, trunc(AVG(total),0) AS total_average, order_sex";
     $from = "dtb_order";
     $objQuery = new SC_Query();
     $objQuery->setGroupBy("order_sex");
     $tmp_where = $where . " AND customer_id <> 0 AND del_flg = 0 AND status <> " . ORDER_CANCEL;
     $arrRet = $objQuery->select($col, $from, $tmp_where, $arrval);
     // 会員購入であることを記録する。
     $max = count($arrRet);
     for ($i = 0; $i < $max; $i++) {
         $arrRet[$i]['member_name'] = '会員' . $this->arrSex[$arrRet[$i]['order_sex']];
     }
     $objPage->arrResults = $arrRet;
     // 非会員集計の取得
     $tmp_where = $where . " AND customer_id = 0 AND del_flg = 0 AND status <> " . ORDER_CANCEL;
     $arrRet = $objQuery->select($col, $from, $tmp_where, $arrval);
     // 非会員購入であることを記録する。
     $max = count($arrRet);
     for ($i = 0; $i < $max; $i++) {
         $arrRet[$i]['member_name'] = '非会員' . $this->arrSex[$arrRet[$i]['order_sex']];
     }
     $objPage->arrResults = array_merge($objPage->arrResults, $arrRet);
     // 円グラフの生成
     if ($graph) {
         $image_key = "member";
         $objPage->tpl_image = $this->lfGetGraphPie($objPage->arrResults, "member_name", $image_key, "(売上比率)", $sdate, $edate);
     }
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:32,代码来源:LC_Page_Admin_Total.php

示例4: findProductCount

    /**
     * SC_Queryインスタンスに設定された検索条件をもとに対象商品数を取得する.
     *
     * 検索条件は, SC_Query::setWhere() 関数で設定しておく必要があります.
     *
     * @param SC_Query $objQuery SC_Query インスタンス
     * @param array $arrVal 検索パラメーターの配列
     * @return array 対象商品ID数
     */
    function findProductCount(&$objQuery, $arrVal = array())
    {
        $table = <<<__EOS__
                 dtb_products AS alldtl
            JOIN dtb_product_categories AS T2
              ON alldtl.product_id = T2.product_id
            JOIN dtb_category
              ON T2.category_id = dtb_category.category_id
__EOS__;
        $objQuery->setGroupBy('alldtl.product_id');
        $sql_base = $objQuery->getSql('alldtl.product_id', $table);
        return $objQuery->getOne("SELECT count(*) FROM ( {$sql_base} ) as t", $arrVal);
    }
开发者ID:nanasess,项目名称:ec-azure,代码行数:22,代码来源:SC_Product.php


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