תצוגות (Views)
מה זה View?
View הוא "טבלה וירטואלית" - שאילתה שמורה שמתנהגת כמו טבלה.
יצירת View
CREATE VIEW active_users AS
SELECT id, name, email
FROM users
WHERE status = 'active';
-- שימוש ב-View
SELECT * FROM active_users;
יתרונות
| יתרון | הסבר |
|---|---|
| פשטות | הסתרת מורכבות שאילתות |
| אבטחה | חשיפת חלק מהנתונים בלבד |
| שימוש חוזר | כתיבה פעם אחת, שימוש רב |
| עקביות | הגדרה אחידה לכל המשתמשים |
דוגמאות מעשיות
-- View עם JOIN
CREATE VIEW order_details AS
SELECT
o.id AS order_id,
u.name AS customer,
o.total,
o.status
FROM orders o
JOIN users u ON o.user_id = u.id;
-- View עם אגרגציה
CREATE VIEW sales_by_month AS
SELECT
YEAR(order_date) AS year,
MONTH(order_date) AS month,
SUM(total) AS revenue
FROM orders
GROUP BY YEAR(order_date), MONTH(order_date);
עדכון ומחיקה
-- עדכון View
CREATE OR REPLACE VIEW active_users AS
SELECT id, name, email, created_at
FROM users
WHERE status = 'active';
-- מחיקת View
DROP VIEW IF EXISTS active_users;
Updatable Views
-- View פשוט ניתן לעדכון
CREATE VIEW user_emails AS
SELECT id, email FROM users;
UPDATE user_emails SET email = '[email protected]' WHERE id = 1;
💡 לא כל View ניתן לעדכון - רק Views פשוטים ללא JOIN/GROUP BY
← אינדקסים | חזור לתוכן העניינים →
בדקו את עצמכם
נסו לענות לבד לפני שאתם פותחים את התשובה.
-
מה זה View?
הצגת התשובה
תשובה ד. הנתונים עצמם לא מועתקים. בכל גישה השאילתה רצה מחדש.
-
למה להשתמש ב-View?
הצגת התשובה
תשובה ב. אפשר לתת למשתמש גישה ל-View בלי גישה לטבלה המלאה.