CL370_EAT_ CL370_EAT_TITLE CL370_PERS CL370_REQ_DA CL370_FOOD1 CL370_FOOD2 CL370_FOOD3
---------- ------------------------------ ---------- ------------ -------------------- -------------------- -----------------
CL370_SYS_
----------
5122701 早餐 成人 2005-12-27 肉末蒸水蛋 牛肉炒芹菜
27-12月-055122702 中餐 成人 2005-12-27 生菜 粉蒸肉 牛肉炒芹菜
27-12月-055122803 晚餐 成人 2005-12-28 肉末蒸水蛋 牛肉炒芹菜 粉蒸肉
27-12月-05
CL370_EAT_ CL370_EAT_TITLE CL370_PERS CL370_REQ_DA CL370_FOOD1 CL370_FOOD2 CL370_FOOD3
---------- ------------------------------ ---------- ------------ -------------------- -------------------- -----------------
CL370_SYS_
----------
5122701 早餐 幼儿 2005-12-27 瘦肉粥 小馒头
27-12月-055122702 中餐 幼儿 2005-12-27 瘦肉粥 瘦肉鸡蛋汤面 肉末红萝卜蒸水蛋
27-12月-055122703 晚餐 幼儿 2005-12-27 瘦肉鸡蛋汤面 小馒头
27-12月-05
CL370_EAT_ CL370_EAT_TITLE CL370_PERS CL370_REQ_DA CL370_FOOD1 CL370_FOOD2 CL370_FOOD3
---------- ------------------------------ ---------- ------------ -------------------- -------------------- -----------------
CL370_SYS_
----------
5122901 早餐 成人 2005-12-29 肉末蒸水蛋 牛肉炒芹菜 生菜
28-12月-055122902 中餐 成人 2005-12-29 牛肉炒芹菜 生菜 粉蒸肉
28-12月-055122903 晚餐 成人 2005-12-29 生菜 粉蒸肉 西洋菜
28-12月-05我现在是想统计出每种菜在一段时间内出现的次数,菜名是不固定的,可按人员构成(如成人),时间段(27-12月-05到29-12月-05)。
如: 菜名 次数 人员类型 天数
牛肉炒芹菜 5 成人 3
粉蒸肉 4 成人 3
......................
SELECT adfasd 菜名,decode('牛肉',1,'菜',1,....) 次数,asdf 人员类型,decode('成人',1,'小儿',1....) from adfasd
最多让吃3种菜吧。
FROM (
SELECT CL370_FOOD1 AS FOOD,CL370_PERS AS PERS,COUNT(*) AS CNT,COUNT(DISTINCT CL370_REQ_DA) AS DAY
FROM CL370
GROUP BY CL370_FOOD1,CL370_PERS
UNION ALL
SELECT CL370_FOOD2 AS FOOD,CL370_PERS AS PERS,COUNT(*) AS CNT,COUNT(DISTINCT CL370_REQ_DA) AS DAY
FROM CL370
GROUP BY CL370_FOOD2,CL370_PERS
UNION ALL
SELECT CL370_FOOD3 AS FOOD,CL370_PERS AS PERS,COUNT(*) AS CNT,COUNT(DISTINCT CL370_REQ_DA) AS DAY
FROM CL370
GROUP BY CL370_FOOD3,CL370_PERS
) GROUP BY FOOD,PERS;