[Database][SQL]資料庫查詢(三)

小黑
發佈於後端
2023/12/11閱讀時間約 2 分鐘

聚合函數

可以對資料的筆數、平均、最大、最小和加總的運算,提供查詢結果:如下表示:

  • COUNT(Column):計算筆數,「*」是統計紀錄數。
  • AVG(Column):計算欄位平均值。
  • MAX(Column):計算欄位最大值。
  • MIN(Column):計算欄位最小值。
  • SUM(Column):計算欄位總和。


子查詢

在WHERE裡使用SELECT,稱為「子查詢」。

SELECT COUNT(*) FROM your_table1_name WHERE column1=(SELECT column1 FROM your_table2_name WHERE column2='value2')

上面指令有兩個SELECT,首先會在your_table2_name裡取得column2等於value2的column1,再從your_table1_name裡,取得筆數。


合併查詢

INNER JOIN

可以從兩個資料表取得都存在的資料。

SELECT your_table1_name.column1, your_table2_name.* FROM your_table1_name INNER JOIN your_table2_name ON your_table1_name.column1=your_table2_name.column1

從your_table1_name取得column1,再從your_table2_name取得與your_table1_name的column1相同的column1,並且合併資料。


OUTER JOIN

可以取得任一資料表的所有資料,不論資料是否都存在於資料表。

  • LEFT JOIN
SELECT your_table1_name.*, your_table2_name.column1 FROM your_table1_name LEFT JOIN your_table2_name ON your_table1_name.column1=your_table2_name.column1

左邊是your_table1_name,右邊是your_table2_name。


  • RIGHT JOIN
SELECT your_table1_name.column1, your_table2_name.* FROM your_table1_name RIGHT JOIN your_table2_name ON your_table1_name.column1=your_table2_name.column1


7會員
78內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
發表第一個留言支持創作者!