हायरार्किकल टेबल्स के साथ काम

Python में Databases का परिचय

Jason Myers

Co-Author of Essential SQLAlchemy and Software Engineer

हायरार्किकल टेबल्स

  • अपने आप से संबंध रखते हैं
  • आमतौर पर मिलते हैं:
    • संगठनात्मक
    • भौगोलिक
    • नेटवर्क
    • ग्राफ
Python में Databases का परिचय

हायरार्किकल टेबल्स - उदाहरण

हायरार्किकल टेबल

Python में Databases का परिचय

हायरार्किकल टेबल्स - alias()

  • टेबल को कई नामों से देखने का तरीका चाहिए
  • एक यूनिक रेफरेंस बनता है जिसे हम उपयोग कर सकते हैं
Python में Databases का परिचय

हायरार्किकल डेटा क्वेरी करना

managers = employees.alias()

stmt = select( [managers.columns.name.label('manager'), employees.columns.name.label('employee')])
stmt = stmt.select_from(employees.join( managers, managers.columns.id == employees.columns.manager)
stmt = stmt.order_by(managers.columns.name)
print(connection.execute(stmt).fetchall())
[(u'FILLMORE', u'GRANT'),
 (u'FILLMORE', u'ADAMS'),
 (u'HARDING', u'TAFT'), ...
Python में Databases का परिचय

group_by और func

  • group_by() को सही alias पर लगाना ज़रूरी है
  • किन कॉलम्स पर फ़ंक्शंस लगा रहे हैं, सावधान रहें
  • यदि किसी क्वेरी में आप alias और टेबल नाम दोनों इस्तेमाल नहीं कर रहे, तो alias न बनाइए
Python में Databases का परिचय

हायरार्किकल डेटा क्वेरी करना

managers = employees.alias()

stmt = select([managers.columns.name, func.sum(employees.columns.sal)])
stmt = stmt.select_from(employees.join( managers, managers.columns.id == employees.columns.manager)
stmt = stmt.group_by(managers.columns.name) print(connection.execute(stmt).fetchall())
[(u'FILLMORE', Decimal('96000.00')),
 (u'GARFIELD', Decimal('83500.00')),
 (u'HARDING', Decimal('52000.00')),
 (u'JACKSON', Decimal('197000.00'))]
Python में Databases का परिचय

अभ्यास करते हैं!

Python में Databases का परिचय

Preparing Video For Download...