const viewName = 'points_balance_view' function createViewSql() { return 'CREATE VIEW points_balance_view AS SELECT user_id, COALESCE(SUM(amount), 0) AS balance FROM billing_ledger GROUP BY user_id' } function createEmptyViewSql(dialect) { if (dialect === 'mysql2') { return 'CREATE OR REPLACE VIEW points_balance_view AS SELECT NULL AS user_id, 0 AS balance FROM DUAL WHERE 1=0' } return 'CREATE VIEW IF NOT EXISTS points_balance_view AS SELECT NULL AS user_id, 0 AS balance WHERE 0' } module.exports = { viewName, createViewSql, createEmptyViewSql, }