Index: advanced_views.sql
===================================================================
--- advanced_views.sql	(revision 3679996aa9694cc6afa7598db54bdc53f0f651fb)
+++ advanced_views.sql	(revision 3679996aa9694cc6afa7598db54bdc53f0f651fb)
@@ -0,0 +1,43 @@
+CREATE OR REPLACE VIEW vw_wedding_financial_summary AS
+SELECT
+    w.wedding_id,
+    w.budget,
+    calculate_wedding_total_cost(w.wedding_id) AS total_cost,
+    w.budget - calculate_wedding_total_cost(w.wedding_id) AS remaining_budget
+FROM wedding w;
+
+
+CREATE OR REPLACE VIEW vw_rsvp_overview AS
+SELECT
+    e.event_id,
+    e.event_type,
+    r.status,
+    COUNT(*) AS total
+FROM event_rsvp r
+JOIN event e ON r.event_id = e.event_id
+GROUP BY e.event_id, e.event_type, r.status;
+
+
+CREATE OR REPLACE VIEW vw_vendor_booking_overview AS
+SELECT DISTINCT
+    w.wedding_id,
+    v.name AS venue_name,
+    p.name AS photographer_name,
+    b.band_name
+FROM wedding w
+LEFT JOIN venue_booking vb ON w.wedding_id = vb.wedding_id
+LEFT JOIN venue v ON vb.venue_id = v.venue_id
+LEFT JOIN photographer_booking pb ON w.wedding_id = pb.wedding_id
+LEFT JOIN photographer p ON pb.photographer_id = p.photographer_id
+LEFT JOIN band_booking bb ON w.wedding_id = bb.wedding_id
+LEFT JOIN band b ON bb.band_id = b.band_id;
+
+
+CREATE OR REPLACE VIEW vw_upcoming_weddings AS
+SELECT
+    wedding_id,
+    "date" AS wedding_date,
+    budget,
+    notes
+FROM wedding
+WHERE "date" >= CURRENT_DATE;
