שלח תשובה

זירת השאלות

783
צפיות
7
תשובות

שאילתות מורכבות – טבלה זמנית ?

,‏ 3 בינואר, 2005

יש לי שאילתה שמורכבת מטבלה ו- 2 שאילתות, שכל אחת מהן מורכת מעוד שאילתה.
אני מנסה למצוא דרך לפשט את הקוד(משפט SQL משולב בקוד VB), האם ישנה דרך לייצר טבלאות זמניות שלא ישמרו בבסיס הנתונים רק לצורך הקוד? ניסיתי להשתמש ב- SELECT INTO, אבל קיבלתי הודעת שגיאה שהטבלה/שאילתה קיימת.

הכוונה שלי היא לכתוב מספר משפטי SQL כך שכל משפט יוכל להתבסס על התוצאה של קודמו.
איך עושים את זה ?

תודה מראש

תגיות:

7 תשובות

  1. זהר פלד הגיב:

    אני חושב שהפתרון שאת מחפשת הוא view
    זו שאילתה שנשמרת במסד הנתונים, ואפשר לגשת אל התוצאות שלה בדיוק כמו אל כל טבלה אחרת…
    הסינטקס הוא:

    CREATE VIEW viewName
    AS SELECT columns FROM table WHERE conditions…
    ובשביל לגשת ל view את משתמשת ב
    SELECT columns
    FROM viewName

    כמובן שאת היצירה של ה view אפשר לבצע עם כל מה שאפשר לבצע ב SELECT  רגיל, וגם בשליפה ממנו אפשר…

    בהצלחה!

  2. ניר טייב הגיב:

    לדעתי SP יותר מתאים
    כי היא מדברת על מס' שאילתות ולא על שאילתא אחת
    במידה ואכן אני צודק אז במידה ואת משתמשת ב-Access זה בלתי אפשרי כי Access מתייחס ל-SP (בערך) כמו אל View רק שאפשר לקבל גם פרמטרים (אין אפשרות לריבוי שאילתות…)
    ב=SQL SERVER אפשרי ואף מומלץ ברוב המקרים שצריך SP. (מידע ב-FAQ)

  3. זהר פלד הגיב:

    אני יודע שאפשר לבצע מספר שאילתות
    ב SP, השאלה היא אם אפשר לבצע מספר שאילתות שכל אחת מהן בנויה על התוצאות של השניה?

  4. ניר טייב הגיב:

    אני לא מבין גדול ב-MSSQL
    (משום שמעולם לא עבדתי עליו אני רק קורא פה ושם בפורומים ובכל מיני מקומות…)
    אבל אם השאילתא אמורה להחזיר ערך/רשומה אחת אפשר להשתמש במשתנים פנימיים ולהשתמש בהם לאורך ה-SP.
    במקרה ואילו קבוצות של ערכים אני לא רואה פיתרון ב-SP חוץ מתת שאילתה (יכול להיות שיש פיתרון יותר טוב שאיני מכיר…)

  5. jonatan44 הגיב:

    אבל שאלת המליון דולר
    האם זהר פלד הוא איש או אישה? זכר או נקבה?
    כי לפי השם אפשר לחשוב שהוא בן, אבל הפרטים סכרטיס באישי נוגדים זואת

  6. זהר פלד הגיב:

    זה בטח השתנה כשהוספתי את החתימה…
    סידרתי את זה עכשיו, וגם הוספתי תמונה…
    איך אני איתך?

    וד"א, יש גם לא מעט בחורות שקוראים להן זהר…

שלח תשובה