Php 各类金额之和

Php 各类金额之和,php,sql,database,Php,Sql,Database,我试图根据索赔类型在汇总表中合计索赔金额 我的意思是每个员工一行,但有3列,即“车辆索赔总额”、“医疗索赔总额”和“其他索赔总额” 我该怎么做 编辑(来自OP的评论): 这可以通过创建两个视图来完成。一个视图是一个虚拟表。这允许您创建一个虚拟表,其中包含车辆索赔的empid和SUM(c_amount),以及另一个医疗索赔的虚拟表 意见如下: CREATE VIEW vehicle_claim AS SELECT empid, SUM(c_amount) AS 'total vehicle cla

我试图根据索赔类型在汇总表中合计索赔金额

我的意思是每个员工一行,但有3列,即“车辆索赔总额”、“医疗索赔总额”和“其他索赔总额”

我该怎么做

编辑(来自OP的评论):


这可以通过创建两个视图来完成。一个视图是一个虚拟表。这允许您创建一个虚拟表,其中包含车辆索赔的
empid
SUM(c_amount)
,以及另一个医疗索赔的虚拟表

意见如下:

CREATE VIEW vehicle_claim AS
SELECT empid, SUM(c_amount) AS 'total vehicle claim'
FROM claim
WHERE c_type IN('Motorcycle', 'Car')
GROUP BY empid;

CREATE VIEW medical_claim AS
SELECT empid, SUM(c_amount) AS 'total medical claim'
FROM claim
WHERE c_type = 'Medical'
GROUP BY empid;
使用select语句:

SELECT *
FROM user u LEFT JOIN vehicle_claim v on u.empid = v.empid
    LEFT JOIN medical_claim m ON u.empid = m.empid
在这个查询中,我选择了所有用户,并左键连接了我的两个视图。这样,即使用户没有任何(车辆/医疗)索赔,您也可以获得数据


$query=“选择c.empid、u.userName、SUM(c\u amount)作为索赔c中的车辆索赔总额加入用户u ON(c.empid=u.empid),其中c\u type=‘Motorcycle’或c\u type='Car'按empid分组";首先,这是一个基本的聚合查询,
groupby
是SQL的基本部分。因此,如果您打算使用SQL,请了解一下它。其次,该问题缺少重要信息,例如样本数据、期望结果、您正在使用的数据库标签以及您已经尝试过的代码。这只会给我“车辆索赔总额”。我想在第二栏写上“全部医疗索赔”。我没有名声上传我桌子的照片。@parkchu。然后在查询中键入表定义/内容。无论如何,文本比图片有用得多。如何选择多于2个的表视图?这意味着,我想在select语句中再显示一个视图表。例如“others claim”。非常感谢@simon,我知道我现在可以这样做。有一个问题。该表无法在表的第一列显示用户id。while($row=mysql_fetch_数组($result)){print”“;print”“。$row['empid']。;print”“;print”“。$row['miliety claim']。;print”“。$row['medical claim']。”;print”“。$row['parking claim'];print”“。$row['other claim'];print”“;}@parkchu尝试打印每一行并查看其中的内容:while($row=mysql_fetch_array($result)){print_r($row);}
SELECT *
FROM user u LEFT JOIN vehicle_claim v on u.empid = v.empid
    LEFT JOIN medical_claim m ON u.empid = m.empid