בולנט - דברים מיוחדים...     פרוטו - בניית אתרים

Israeli ASP Organization

ארגון ה-ASP הישראלי

מאמרים/דוגמאות קוד
קישורים
ספרות
חיפוש כללי:

חפש!
כלליHTMLASPASP.NETSQLמסדי נתוניםJavaScriptXML * XSLDHTML * CSSעיצוב וגרפיקהשרתיםComponentsפרסום ושיווקקידום אתריםקופירייטינגPHP
פרסומת
דף ראשי מדורים דרושים הרשמה למועדון אודותינו צור קשר
מיקום: מאמרים ודוגמאות קוד > SQL

SQL - Union

פעולה זו יוצרת שאילתת איחוד, אשר מצרפת את תוצאותיהן של שתי שאילתות בלתי-תלויות או טבלאות בלתי-תלויות או יותר.

תחביר

[TABLE] query1 UNION [ALL] [TABLE] query2 [UNION [ALL] [TABLE] queryn [ ... ]]

הפעולה UNION מורכבת משני חלקים:

חלקתיאור
query1-nמשפט SELECT , שם של שאילתה מאוחסנת או של טבלה מאוחסנת לפניהם באה מילת המפתח TABLE.





הערות

באפשרותך למזג את תוצאותיהן של שתי שאילתות, טבלאות ומשפטי SELECT או יותר, בכל שילוב אפשרי בפעולת UNION בודדת. הדוגמה הבאה ממזגת טבלה קיימת בשם New Accounts עם משפט SELECT:

TABLE [New Accounts] UNION ALL SELECT * FROM Customers WHERE OrderAmount > 1000;

כברירת מחדל, אין החזרה של רשומות כפולות בעת השימוש בפעולה UNION‏; אולם באפשרותך לכלול את המושא ALL כדי להבטיח שכל הרשומות יוחזרו. בדרך זו השאילתה גם פועלת מהר יותר.

באפשרותך להשתמש במשפטעל כל השאילתות בפעולת UNION לבקש את אותו מספר של שדות; עם זאת, השדות אינם צריכים להיות באותו גודל או מאותו סוג נתונים.

השתמש בכינויים רק במשפט SELECT הראשון, מאחר שמשפטים אחרים יתעלמו מהם. בפסוקית ORDER BY‏, הפנה לשדות לפי האופן בו נקראו במשפט SELECT הראשון.

הערות

  • באפשרותך להשתמש בפסוקית GROUP BY או בפסוקית HAVING בכל ארגומנט שאילתה כדי לקבץ את הנתונים שהוחזרו.
  • באפשרותך להשתמש בפסוקית ORDER BY בסוף ארגומנט השאילתה כדי להציג את הנתונים שהוחזרו בסדר מסויים.

דוגמה לפעולה UNION

דוגמה זו מאחזרת את השמות והערים של כל הספקים והלקוחות בברזיל.
דוגמה זו שולחת קריאה לפרוצדורה EnumFields‏, אותה באפשרותך למצוא בדוגמה למשפט SELECT.

Sub UnionX() Dim dbs As Database, rst As Recordset ' Modify this line to include the path to Northwind ' on your computer. Set dbs = OpenDatabase("Northwind.mdb") ' Retrieve the names and cities of all suppliers ' and customers in Brazil. Set rst = dbs.OpenRecordset("SELECT CompanyName," _ & " City FROM Suppliers" _ & " WHERE Country = 'Brazil' UNION" _ & " SELECT CompanyName, City FROM Customers" _ & " WHERE Country = 'Brazil';") ' Populate the Recordset. rst.MoveLast ' Call EnumFields to print the contents of the ' Recordset. Pass the Recordset object and desired ' field width. EnumFields rst, 12 dbs.Close End Sub



         

מחבר: אדם ליבסקירמת קושי: 1  ||  ציון: (6.5)כל הזכויות שמורות ל-IAO ©

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