SQLAlchemy कोर - उपनाम का उपयोग करना

SQL में उपनाम टेबल या SELECT स्टेटमेंट के "बदला हुआ" संस्करण से मेल खाता है, जो कभी भी आपके द्वारा "SELECT * FROM table1 AS" कहने पर होता है। एएस तालिका के लिए एक नया नाम बनाता है। उपनाम किसी भी तालिका या उपश्रेणी को एक अद्वितीय नाम से संदर्भित करने की अनुमति देते हैं।

तालिका के मामले में, यह एक ही तालिका को कई बार FROM क्लॉज में नामित करने की अनुमति देता है। यह कथन द्वारा प्रस्तुत कॉलम के लिए एक मूल नाम प्रदान करता है, जिससे उन्हें इस नाम के सापेक्ष संदर्भित किया जा सकता है।

SQLAlchemy में, किसी भी तालिका, चयन () निर्माण, या अन्य चयन करने योग्य वस्तु का उपयोग कर एक उपनाम में बदल दिया जा सकता है From Clause.alias()विधि, जो एक उपनाम निर्माण करता है। Sqlalchemy.sql मॉड्यूल में उपनाम () फ़ंक्शन एक उपनाम का प्रतिनिधित्व करता है, जैसा कि आम तौर पर एएस कीवर्ड का उपयोग करके SQL कथन के भीतर किसी तालिका या उप-चयन पर लागू होता है।

from sqlalchemy.sql import alias
st = students.alias("a")

इस उपनाम का उपयोग अब छात्रों की तालिका के संदर्भ में चयन () निर्माण में किया जा सकता है -

s = select([st]).where(st.c.id>2)

यह SQL अभिव्यक्ति में निम्नानुसार अनुवाद करता है -

SELECT a.id, a.name, a.lastname FROM students AS a WHERE a.id > 2

अब हम कनेक्शन ऑब्जेक्ट के एग्जीक्यूट () विधि के साथ इस SQL ​​क्वेरी को निष्पादित कर सकते हैं। पूरा कोड इस प्रकार है -

from sqlalchemy.sql import alias, select
st = students.alias("a")
s = select([st]).where(st.c.id > 2)
conn.execute(s).fetchall()

जब कोड के ऊपर लाइन निष्पादित की जाती है, तो यह निम्न आउटपुट उत्पन्न करता है -

[(3, 'Komal', 'Bhandari'), (4, 'Abdul', 'Sattar'), (5, 'Priya', 'Rajhans')]