我正在使用Crystal Reports v10。我現在的結果集看起來像這樣(有44行,這是一個例子):如何使用LIKE GROUP和AVG行
item code item desc cost
21010DF DOUG FIR 2x10-10 300.00
21012DF DOUG FIR 2x10-12 310.50
21014DF DOUG FIR 2x10-14 313.25
21016DF DOUG FIR 2x10-16 316.10
21018DF DOUG FIR 2x10-18 319.56
2410DF DOUG FIR 2x4-10 271.69
2412DF DOUG FIR 2x4-12 273.12
2414DF DOUG FIR 2x4-14 275.98
12CDX PLYWOOD 1/2 CDX 15.00
34TGADV PLYWOOD T&G ADV 24.00
58CDX PLYWOOD 5/8 CDX 18.00
我一直在問到組這些項目,併爲每個組的平均成本。分組規則由組織定義(它們是隨機的 - 一些是邏輯組,而有些行則不在邏輯組中)。
結果集需要這個樣子:
item desc avg cost
DOUG FIR 2x10 (10-14) 300.00
DOUG FIR 2x10-16 316.10
DOUG FIR 2x10-18 319.56
DOUG FIR 2x4 (10-14) 271.69
PLYWOOD CDX 16.50
PLYWOOD T&G ADV 24.00
到目前爲止,這是我得到了什麼,但它似乎並沒有被即將接近我所需要的:
SELECT item_cd, item.item_desc, AVG(inv.cst) as avg cost
FROM item, inv
WHERE item.item_id = inv.item_id
AND item.item_cd LIKE '210%DF'
GROUP BY item.item_cd, item.item_desc
任何人都可以提供如何實現這一目標的建議?
如果您的用戶需要的組具有特定的規則,爲什麼不用「groupnumber」創建一個字段,更新這些規則並根據這些字段進行分組? – jclozano 2012-03-05 17:20:57
這是一個**真的**糟糕的方式來存儲您的數據。嘗試重構數據庫,例如,你可以使用'wood_type'(帶有「DOUG FIR」,「PLYWOOD」等等)和'dimensions'(值爲2x10,2x10等) ,然後連字符後面的第三個值(我不是真的知道代表什麼,但是爲它創建一個列)。 – 2012-03-05 17:21:55
Jack Maney - 如果我能夠修改db,這將是一個很好的建議,但不幸的是,我不能。還有其他建議嗎? – Piet 2012-03-05 17:24:42