ThinkPHP、mysqlあるフィールドのいくつかのフィールド値を問い合わせる数

2934 ワード

最近のプロジェクトで問題が発生しました.scoreを取得したいです.idフィールドの値は「42,43,44」それぞれの数で、検索して、自分でまとめてみました.
mysqlクエリ文:
SELECT `score_id`,`count(*)` FROM `score` WHERE `score_id` IN ('42','43','44') GROUP BY `score_id`;

thinkphpクエリー:
$map = array(
    'score_id' => array('in', array('42', '43', '44'))
);
$res = $model('Score')->field('score_id, count(*)')->where($map)->group('score_id')->select();

結果は次の配列を返します.
array(
    "0" => array(
        "score_id" => "42",
        "count(*)" => "2"
    ),
    "1" => array(
        "score_id" => "43",
        "count(*)" => "5"
    ),
    "2" => array(
        "score_id" => "44",
        "count(*)" => "9"
    )
)