亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 邏輯算法 > 正文

PHP模擬SQL的GROUPBY算法

2020-03-22 19:29:04
字體:
來源:轉載
供稿:網友
  • github地址:https://github.com/huyanping/Zebra-PHP-ArrayGroupBy

    packagist地址:https://packagist.org/packages/jenner/array_group_by

    為什么使用Zebra-PHP-ArrayGroupBy

    在如下場景中,我們總是希望能夠在php中使用類似mysql的groupby操作:

      SQL過于復雜,造成數據庫運算效率低下從數據庫中讀取出原始數據,在php中進行運算,增強代碼重用率其他非數據庫場景的數組歸并場景Zebar-PHP-ArrayGroupBy能夠做什么
        對二維數組進行歸并歸并的同時,支持對字段進行自定義處理比SQL更靈活的自定義函數,你可以隨意編寫歸并和字段合并函數

        示例:

        $records = [    ['order_date' => '2014-01-01', 'price' => 5],    ['order_date' => '2014-01-02', 'price' => 10],    ['order_date' => '2014-01-03', 'price' => 20],    ['order_date' => '2015-01-04', 'price' => 25],];$group_by_fields = [    'order_date' => function($html' target='_blank'>value){            return date('Y', strtotime($value));        }];$group_by_value = [    'order_date' => [        'callback' => function($value_array){                return substr($value_array[0], 0, 4);            },        'as' => 'year'    ],    'price' => function($value_array){            return array_sum($value_array);        },];$grouped = JennerZebraArrayGroupBy::groupBy($records, $group_by_fields, $group_by_value);print_r($grouped);

        結果:

        Array(    [0] => Array        (            [year] => 2014            [price] => 35        )    [1] => Array        (            [year] => 2015            [price] => 25        ))

        你也可以使用鏈式方法調用,對數據進行多次匯總,更加靈活:

        $records = [    ['bill_time'=>'2014-01-01 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-01 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-01 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-01 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-01 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-01 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-02 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-02 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-02 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-02 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-02 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-03 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-03 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-03 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-03 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-03 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-04 00:00:00', 'price'=>1, 'cnt'=>3,],    ['bill_time'=>'2014-01-04 00:00:00', 'price'=>1, 'cnt'=>3,],];$group_by_fields = [    'bill_time' => function($field){            return substr($field, 0, 10);        }];$group_by_values = [    'bill_time' => function($field_values){            return substr($field_values[0], 0, 10);        },    'price' => function($field_values){            return array_sum($field_values);        },    'cnt' => function($field_values){            return array_sum($field_values);        }];$week_fields = [    'bill_time' => function($field){            return date('w', strtotime($field));        }];$week_values = [    'bill_time' => function($field_values){            return date('w', strtotime($field_values[0]));        },    'price' => function($field_values){            return array_sum($field_values);        },    'cnt' => function($field_values){            return array_sum($field_values);        }];$grouped = (new JennerZebraArrayGroupBy($records))->groupByField($group_by_fields)->groupByValue($group_by_values)->groupByField($week_fields)->groupByValue($week_values)->get();print_r($grouped);

        舉例

          歸并過程中,實現對結果的中值計算歸并過程中,對時間字段進行自定義處理,例如歸并每5分鐘的數據等等

          PHP編程

          鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
    日韩精品视频在线观看网址| 国产一区二区三区在线播放免费观看| www亚洲精品| 久久手机免费视频| 中文字幕久久精品| 日韩高清免费在线| 午夜精品一区二区三区在线视频| 国产精品日日摸夜夜添夜夜av| 欧美精品一本久久男人的天堂| 亚洲国产精品久久精品怡红院| 欧美激情视频免费观看| 欧美性xxxxx| 久久久免费观看视频| 欧美精品第一页在线播放| 亚洲久久久久久久久久| 欧美日韩一区二区免费在线观看| 91影院在线免费观看视频| 亚洲欧美日韩直播| 精品亚洲va在线va天堂资源站| 精品亚洲一区二区三区在线播放| 欧美极品第一页| 色中色综合影院手机版在线观看| 亚洲男人第一av网站| 国产成人免费av电影| 中文字幕欧美专区| 国产97免费视| 精品国产视频在线| 在线亚洲午夜片av大片| 成人自拍性视频| 国产在线播放不卡| 97超视频免费观看| 中日韩美女免费视频网站在线观看| 国产成人在线精品| 欧美亚洲伦理www| 国产不卡在线观看| www.日本久久久久com.| 日韩中文字幕网| 亚洲天堂男人的天堂| 欧美性色xo影院| 日韩亚洲欧美中文在线| 国产欧美日韩精品在线观看| 国产精品影片在线观看| 国产成人一区二区三区小说| 国产丝袜高跟一区| 中文字幕一区二区三区电影| 国产精品爽爽爽爽爽爽在线观看| 668精品在线视频| 亚洲欧美国产va在线影院| 九九热这里只有精品6| 91午夜理伦私人影院| 最近2019年好看中文字幕视频| 久久精品国产精品| 日韩欧美a级成人黄色| 8x拔播拔播x8国产精品| 亚洲成人精品视频在线观看| 国产91热爆ts人妖在线| 国模gogo一区二区大胆私拍| 国产成人精品视频在线| 欧美黑人国产人伦爽爽爽| 国产精品18久久久久久麻辣| 久久久国产成人精品| 国产成人精品a视频一区www| 日韩美女视频免费看| 日本电影亚洲天堂| 亚洲一区二区三区在线视频| 亚洲黄色免费三级| 97香蕉超级碰碰久久免费软件| 日韩亚洲在线观看| 欧美一级大片在线观看| 欧美日在线观看| 国产精品中文字幕在线观看| 欧美日韩国产麻豆| 亚洲国产高清福利视频| 国产精品成人一区二区| 国产精品三级网站| 麻豆国产精品va在线观看不卡| 精品久久久国产精品999| 国产日韩欧美91| 欧美精品中文字幕一区| 色悠悠国产精品| 国产热re99久久6国产精品| 欧美在线视频网| 成人在线免费观看视视频| 亚洲激情电影中文字幕| 91福利视频在线观看| 2021国产精品视频| 亚洲xxx自由成熟| 精品中文字幕乱| 国产精品美腿一区在线看| 亚洲欧美国产视频| 日本久久久久久久| 久久精品电影一区二区| 国产在线日韩在线| 国产欧美精品va在线观看| 国产精品极品尤物在线观看| 国产精品热视频| 亚洲欧美日韩成人| 久久精品精品电影网| 激情成人在线视频| 一区二区三区高清国产| 91香蕉电影院| 91久久久久久久一区二区| 91久久久久久久| 国产丝袜一区视频在线观看| 欧美在线观看视频| 久久久久久中文| 亚洲福利视频二区| 精品视频久久久久久久| 国产精品久久久久久久久久小说| 色av吧综合网| 欧美性极品xxxx娇小| 最近2019年手机中文字幕| 欧美日韩午夜剧场| 亚洲精品久久久久久久久久久久| 国产91色在线| 日本精品久久久| 欧美中文在线视频| 亚洲a成v人在线观看| 第一福利永久视频精品| 久久国产精品久久久| 亚洲国产精品久久91精品| 欧美孕妇孕交黑巨大网站| 国产成人一区二区三区| 国产精品自拍偷拍视频| 欧美激情精品久久久久久| 亚洲视频第一页| 懂色av影视一区二区三区| 欧美日韩激情视频| 国产女人精品视频| www.欧美三级电影.com| 日本国产精品视频| 日韩av电影手机在线| 91在线中文字幕| 中文字幕av一区中文字幕天堂| 精品丝袜一区二区三区| 欧美小视频在线| 久久久精品日本| 国产欧美va欧美va香蕉在| 91九色精品视频| 成人午夜黄色影院| 国产精品美女久久久久久免费| 中文字幕精品—区二区| 国产精品亚洲美女av网站| 一区二区三区国产视频| 成人在线观看视频网站| 亚洲精品久久久久久久久久久| 久久人人爽人人爽爽久久| 另类专区欧美制服同性| 欧美日韩一区二区免费视频| 久久99国产精品久久久久久久久| 日韩麻豆第一页| 色老头一区二区三区在线观看| 国产亚洲日本欧美韩国| 亚洲欧美在线播放| 国产精品jvid在线观看蜜臀| 欧美日韩一区二区精品| 亚洲一区二区三区乱码aⅴ蜜桃女| 精品国产欧美成人夜夜嗨| 91国偷自产一区二区三区的观看方式| 欧美精品国产精品日韩精品| 国产精品揄拍一区二区| 在线日韩第一页| 国产69精品99久久久久久宅男| 日韩高清av在线|