diff --git a/app/Linebot_handler/Expense.py b/app/Linebot_handler/Expense.py index 237fc5b..83a15a0 100755 --- a/app/Linebot_handler/Expense.py +++ b/app/Linebot_handler/Expense.py @@ -241,15 +241,15 @@ def query_month(line_user_id: str) -> str: now = datetime.now() sql = text(""" - SELECT - COALESCE(m.display_name, e.item_name) AS display_name, + SELECT + COALESCE(m.display_name, e.item_name) AS display_name, SUM(e.amount) as total_amount FROM expenses e - LEFT JOIN merchant_mapping m ON e.seller_name LIKE '%' || m.pattern || '%' - WHERE e.user_id = :user_id - AND EXTRACT(YEAR FROM e.date) = :year - AND EXTRACT(MONTH FROM e.date) = :month - GROUP BY display_name + LEFT JOIN merchant_mapping m ON e.seller_name LIKE '%%' || m.pattern || '%%' + WHERE e.user_id = :user_id + AND EXTRACT(YEAR FROM e.date) = :year + AND EXTRACT(MONTH FROM e.date) = :month + GROUP BY COALESCE(m.display_name, e.item_name) -- 💡 這裡不能只寫 display_name,要寫完整邏輯 ORDER BY total_amount DESC """)