1

PHPスクリプトに2つのテーブルを使用しています。

define("EXTRA_POINTS_VALUE",15);

table "points":
id_user | point
   1    |  500
   2    |  650
   3    |  400

table "points_extra":
id_point_extra | id_user
   1           |   1
   2           |   1
   3           |   1
   4           |   2 

1 つのクエリで COUNT(id_extra_point) * EXTRA_POINTS_VALUE を含む SUM フィールド「points.point」が必要です。それが可能だ?

結果は次のようになります。

id_user | total_point
   1    |     545     (500 + (3 count * 15))
   2    |     665     (650 + (1 count * 15))
   3    |     400     (400 + (0 count * 15))
4

1 に答える 1

1
SELECT  a.id_user,
        a.point + (COUNT(b.id_point_extra) * ?) totalPoints
FROM    points a
        LEFT JOIN points_extra b
            ON a.id_user = b.id_user
GROUP   BY a.id_user
于 2013-09-18T10:25:48.400 に答える