我有一个查询,显示客户订购的产品总数。我想展示2012年和2013年订购的产品数量。
这就是我得到的:
PRODUCT CODE PRODUCT NAME TOTAL
ABRX58 RED WHINE 1000
ABRX45 WHITE WINE 4000
ABRX32 CHAMPAGNE 3500
我想:
PRODUCT CODE PRODUCT NAME TOTAL 2012 TOTAL 2013
ABRX58 RED WHINE 500 500
ABRX45 WHITE WINE 2000 2000
ABRX32 CHAMPAGNE 1000 2500
我的查询:
<?php
foreach ($query=$db->query("SELECT
t1.PRD_ID, t1.PRD_CODE, t1.PRD_CONT_ID, t1.PRD_COND_ID, t1.PRD_LIBELLE
t2.LGCM_ID, t2.LGCM_PRD_ID, t2.LGCM_CMD_ID, SUM(t2.LGCM_QTE_COMMANDE) AS SUM_LGCM_QTE_COMMANDE,
t3.CMD_ID, t3.CMD_DATE, t3.CMD_CLT_ID
FROM products t1
INNER JOIN command_line t2
ON t1.PRD_ID = t2.LGCM_PRD_ID
INNER JOIN commands t3
ON t2.LGCM_CMD_ID = t3.CMD_ID
WHERE t3.CMD_CLT_ID = $cltId AND STR_TO_DATE(t3.CMD_DATE, '%d/%m/%Y') BETWEEN '".$datedeb."' AND '".$datefin."' GROUP BY t1.PRD_CODE") AS $donnees):
?>
我尝试使用SUM(CASE WHEN YEAR(STR_TO_DATE(t3.CMD_DATE, '%m/%d/%Y')) = 2012 THEN t2.LGCM_QTE_COMMANDE ELSE 0 END) AS SUM_LGCM_QTE_COMMANDE_2012
这样的条件但它不起作用。