اتصال جداول در پایگاه داده PostgreSQL

  • مدرس: علی بیگدلی
  • تاریخ انتشار: Feb 10, 2021

ادقام جداول با JOIN

وقتی داده ها را در دو جدول تقسیم کردید می توانید با استفاده از Joins رکوردهای ترکیبی را از این دو جدول دریافت کنید.

فرض کنید ما یک جدول با نام CRICKETERS ایجاد کرده ایم و 5 رکورد را در آن قرار داده ایم و نیز جدول دیگری با نام OdiStats ایجاد کرده ایم و 5 رکورد را در آن وارد کرده ایم.

عبارت زیر داده هایی را با ترکیب مقادیر موجود در این دو جدول بازیابی می کند

SELECT
	Cricketers.First_Name, Cricketers.Last_Name, Cricketers.Country,
	OdiStats.matches, OdiStats.runs, OdiStats.centuries, OdiStats.halfcenturies
	from Cricketers INNER JOIN OdiStats ON Cricketers.First_Name = OdiStats.First_Name;

استفاده از JOIN در پایتون

وقتی داده ها را در دو جدول تقسیم کردید می توانید با استفاده از Joins رکوردهای ترکیبی را از این دو جدول دریافت کنید.

import psycopg2

# establishing the connection
conn = psycopg2.connect(
    database="mydb", user='postgres', password='password', host='127.0.0.1', port='5432'
)
# Setting auto commit false
conn.autocommit = True

# Creating a cursor object using the cursor() method
cursor = conn.cursor()

# Retrieving single row
sql = '''SELECT * from EMP INNER JOIN CONTACT ON EMP.CONTACT = CONTACT.ID'''

# Executing the query
cursor.execute(sql)

# Fetching 1st row from the table
result = cursor.fetchall()
print(result)

# Commit your changes in the database
conn.commit()

# Closing the connection
conn.close()

خروجی:

[('Ramya', 'Rama priya', 27, 'F', 9000.0, 101, 101, 'Krishna@mymail.com', 'Hyderabad'), 
	   ('Vinay', 'Battacharya', 20, 'M', 6000.0, 102, 102, 'Raja@mymail.com', 'Vishakhapatnam'), 
	   ('Sharukh', 'Sheik', 25, 'M', 8300.0, 103, 103, 'Krishna@mymail.com ', 'Pune'), 
	   ('Sarmista', 'Sharma', 26, 'F', 10000.0, 104, 104, 'Raja@mymail.com', 'Mumbai')]

 

ثبت دیدگاه
نام *
ایمیل*
دیدگاه *
0دیدگاه