使用 Python 解釋並在 MySQL 中展示 UNION 的用法?


UNION 語句用於組合兩個 SELECT 查詢的結果,而不會重複重複的值。如果兩個 SELECT 查詢返回相同的行,則僅列出一次。

要在兩個 select 語句上執行 UNION,

  • 返回的列數必須相同

  • 列的資料型別必須相同

  • 兩個 select 語句必須按相同的順序返回列。

語法

SELECT column_name FROM table1
UNION
SELECT column_name FROM table2

使用 Python 中的 MySQL 執行兩個 select 查詢聯合的步驟

  • 匯入 MySQL 聯結器

  • 匯入 MySQL 聯結器

  • 使用 connect() 方法建立與聯結器的連線

  • 使用 cursor() 方法建立遊標物件

  • 使用適當的 mysql 語句建立查詢

  • 使用 execute() 方法執行 SQL 查詢

  • 關閉連線

假設有兩個表,“Students” 和 “Department”,如下所示:

學生

+----------+--------------+-----------+
|    id    | Student_name | Dept_id   |
+----------+--------------+-----------+
|    1     |    Rahul     |    120    |
|    2     |    Rohit     |    121    |
|    3     |    Kirat     |    125    |
|    4     |    Inder     |    123    |
+----------+--------------+-----------+

部門

+----------+-----------------+
| Dept_id  | Department_name |
+----------+-----------------+
| 120      | CSE             |
| 121      | Mathematics     |
| 122      | Physics         |
+----------+-----------------+

我們將從這兩個表中選擇 Dept_id 並對結果執行聯合。這將返回我們在兩個表中存在的所有不同的 dept_id。

示例

import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

query="SELECT Dept_id FROM Students UNION SELECT Dept_id FROM Department"
cursor.execute(query)

rows=cursor.fetchall()
for row in rows:
   print(row)

db.close()

輸出

120
121
125
123
122

更新於: 2021年6月10日

841 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.