שאלה ב t-sql

mcmmcon

New member
שאלה ב t-sql

אני מעוניין ליצור טבלה זמנית שהסכמה שלה תיקבע ע"פ שאילתת sql שאני אספק לה... האם זה אפשרי?
 

mcmmcon

New member
תודה על התשובה, תוכל לכוון אותי?

אשמח לקבל הסבר או מאמר אם יש ברשותך. תודה :)
 

pitoach

New member
כמובן אם תצרף לנו פרטים נוספים רלוונטים

צרף לנו קודם כל DDL+DML כדי שנוכל לדבר על אותם נתונים ותהיה לנו שפה משוטפת צרף לנו דוגמה לשאילתה ה SQL שלפיה אתה רוצה לבנות בצורה דינמית את הסכמה צרף לנו תוצאה מצופה (התוצאה שאתה רוצה לקבל בסיום) כדי שנוכל להבין מה המטרה וכמובן נסה לפרט במילים הסבר כללי מפורט ככל שאתה יכול לגבי התהליך כולו * לשאלה כללית בלי פירוט אפשר לתת רק תשובה כללית בלי פירוט
 

mcmmcon

New member
בשמחה

ראשית, אני לא יודע מה זה DML או DDL, אני תכף אגגל על זה
המטרה העיקרית שלי היא לקחת שאילתת SELECT (ולא משנה אם יש בתוכה where או join או כל דבר אחר) ולהפוך אותה באמצעות SP לשאילתה שיודעת לעשות חלוקה לעמודים, למשל:
select * from [users] --> SELECT TOP 3 * FROM (SELECT ROW_NUMBER() OVER (ORDER BY id) as Row,[Users].* FROM [Users]) as Pagination_Table ORDER BY Row​
במקרה שצירפתי, הפכתי שאילתה ששואבת את הכל מ users לשאילתה ששואבת הכל מ users בחלוקה לעמודים (במקרה הזה, ביקשתי את העמוד הראשון וביקשתי שיהיו 3 רשומות בכל עמוד). חשבתי לעשות את זה דרך Store procedure, המטרה שלי היא לקחת שאילתה, להכניס אותה לטבלה (הטבלה יודעת לפי השאילתה מה הסכמה שאמורה להיות בצורה דינמית) ולעשות על הטבלה הזאת את השאילתה של החלוקה לעמודים... החלק שאני תקוע בו זה איך ליצור טבלה דינמית בהתאם לתוצאות שהחזירה שאילתה שאספק ל Store procedure... מקווה שהצלחתי הפעם להסביר את עצמי... :) תודה :)
 

pitoach

New member
יש פירוט למעלה בשירשור

אם אני מבין אותו טוב אז הכוונה שלו פשוטה בעקרון וקשורה ל dynamic SQL למשל פשוט אין לי כוח להתחיל לבדוק לעומק שאלה כשאין לי DDL+DML אבל הרעיון הוא בעקרון כך: צריך SP שיקבל כנתונים מבחוץ: שרשרת של שאילתה כלשהיא + עמוד מסויים שרוצים לצפות בו + מספר נתונים בעמוד ה SP צריך להחזיר את העמוד המתאים מתוך הנתונים של השאילתה שהועברו הדרך הכי פשוטה היא פשוט להקיף את כל השאילתה המקורית בסוגריים ולהוסיף row_number ואז להוציא בסינון רק את הנתונים של עמוד מסויים * כאמור אם אראה DDL+DML אולי יהיה לי כוח לכתוב את הכמה שורות האלו
בכל מקרה mcmmcon זה הרעיון שיכול להיות הכי פשוט ליישום, אבל הוא לא ממש לא ייתן פתרון מיטבי ואם הייתי לגשת לבעיה ברצינות הייתי מכניס עוד כמה פרמטרים לפתרון ובונה שאילתה מתאימה יותר (למשל התייחסות לאינדקסים יכול לגרור שאילתה שונה ועוד.. כל מה שקשור ל DDL)
 

גרי רשף

New member
הבנתי אותך..

..שמע- לא מצפים ממך לספק פה פתרון מלא כולל אפיון, התקנה, תמיכה והטמעה.. ניתן דוגמה סכימתית והשואל יבין, ואם לא- נפרט יותר. אם הוא יספק לך DDL+DML אתה באמת מתכוון להיכנס לזה?..
 
למעלה