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

閱讀時間約 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


8會員
119Content count
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
種類 SQL指令分三大部分: 資料定義語言(Data Definition Language,DDL):建立資料表、索引和檢視表等,和定義資料表的欄位。 資料操作語言(Data Manipulation Language,DML):資料表紀錄查詢、插入、刪除和更新指令。 資料控制語言(Dat
多條件查詢 AND運算子 SELECT *​ FROM your_table_name WHERE column1 LIKE '_value1%' AND column2 = number​2 OR運算子 SELECT *​ FROM your_table_name WHERE colu
查詢範圍 指定欄位 SELECT column1, column2, column3,... FROM your_table_name 不重複欄位 SELECT DISTINCT column1 FROM your_table_name 欄位別名 SELECT column1 A
底下列出常用的資料類型: TINYINT:最小的整數,有符號整數-128~127;無符號整數0~255。 SMALLINT:短整數,有符號整數-32,768~32,767;無符號整數0~65,535。 MEDIUMINT:中型整數,有符號整數-8,388,608~8,388,607;無符號整數
種類 SQL指令分三大部分: 資料定義語言(Data Definition Language,DDL):建立資料表、索引和檢視表等,和定義資料表的欄位。 資料操作語言(Data Manipulation Language,DML):資料表紀錄查詢、插入、刪除和更新指令。 資料控制語言(Dat
多條件查詢 AND運算子 SELECT *​ FROM your_table_name WHERE column1 LIKE '_value1%' AND column2 = number​2 OR運算子 SELECT *​ FROM your_table_name WHERE colu
查詢範圍 指定欄位 SELECT column1, column2, column3,... FROM your_table_name 不重複欄位 SELECT DISTINCT column1 FROM your_table_name 欄位別名 SELECT column1 A
底下列出常用的資料類型: TINYINT:最小的整數,有符號整數-128~127;無符號整數0~255。 SMALLINT:短整數,有符號整數-32,768~32,767;無符號整數0~65,535。 MEDIUMINT:中型整數,有符號整數-8,388,608~8,388,607;無符號整數
你可能也想看
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
客戶發來詢問,我想修改SQL Server 2019 定序該如何做? 首先需要知道database的定序(Collation)是什麼,其實是決定資料庫所使用的字元集(character sets)、排序的方式。 因為客戶的SQL Server是英文版本,通常臺灣地區的預設定序是 Chin
Thumbnail
我帶著敬畏的心去請教直屬主管,看有沒有讓自己進步的好辦法。結果直屬主管跟我說了這句話,霸氣外露的一句話讓我印象極為深刻,請教結束後主管還出了一門作業「SQL 轉置」,並特別交代我說:「你只要把這個技術學會就會變強」。
Thumbnail
在網頁服務中資料庫擔任了很重要的任務,用來保存客戶的資料與提供分析的數據來源,而針對不同的需求會有各類型適合資料庫來負責。 這篇文章中會針對 Row-Oriented (以列為儲存主體) 和 Columnar (以行為儲存主體) 的兩種資料庫來分析任務與資料庫間的合適搭配。
Thumbnail
Neon 是基於 PostgreSQL 的 Serverless Database,具備了 Serverless 帶來的高乘載量、划算的費用與 PostgreSQL 強大的效能的一款開源資料庫服務。
Thumbnail
Firebase Realtime Database 是一個 NoSQL 即時雲端資料庫,支援多平台(JavaScript SDKs、Android、iOS),可以讓使用者即時取得資料庫的資料。
Thumbnail
如上篇,使用Migration來做DB版本控制,但是會發現開發過程中若是要建立測試資料,要進DB一筆一筆手動新增或執行預先寫好的insert sql,其實有點麻煩,使用Laravel提供的Seeder功能,就可以解決這個問題。 指令如下,假設建立一個user table seeder:
今天寫程式連結資料庫,遇見這樣的錯誤 環境 .NET Core 6 / VS 2022 解決方法:DB連結字串 ConnectionString 需要額外加上 TrustServerCertificate=true。不然會出現錯誤 以 appsettings.json 設定檔為例
Thumbnail
假如你開發了一個網站,有user登入的功能,駭客故意輸入SQL語法來破壞原本的SQL結構,這就是SQL注入攻擊。
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
客戶發來詢問,我想修改SQL Server 2019 定序該如何做? 首先需要知道database的定序(Collation)是什麼,其實是決定資料庫所使用的字元集(character sets)、排序的方式。 因為客戶的SQL Server是英文版本,通常臺灣地區的預設定序是 Chin
Thumbnail
我帶著敬畏的心去請教直屬主管,看有沒有讓自己進步的好辦法。結果直屬主管跟我說了這句話,霸氣外露的一句話讓我印象極為深刻,請教結束後主管還出了一門作業「SQL 轉置」,並特別交代我說:「你只要把這個技術學會就會變強」。
Thumbnail
在網頁服務中資料庫擔任了很重要的任務,用來保存客戶的資料與提供分析的數據來源,而針對不同的需求會有各類型適合資料庫來負責。 這篇文章中會針對 Row-Oriented (以列為儲存主體) 和 Columnar (以行為儲存主體) 的兩種資料庫來分析任務與資料庫間的合適搭配。
Thumbnail
Neon 是基於 PostgreSQL 的 Serverless Database,具備了 Serverless 帶來的高乘載量、划算的費用與 PostgreSQL 強大的效能的一款開源資料庫服務。
Thumbnail
Firebase Realtime Database 是一個 NoSQL 即時雲端資料庫,支援多平台(JavaScript SDKs、Android、iOS),可以讓使用者即時取得資料庫的資料。
Thumbnail
如上篇,使用Migration來做DB版本控制,但是會發現開發過程中若是要建立測試資料,要進DB一筆一筆手動新增或執行預先寫好的insert sql,其實有點麻煩,使用Laravel提供的Seeder功能,就可以解決這個問題。 指令如下,假設建立一個user table seeder:
今天寫程式連結資料庫,遇見這樣的錯誤 環境 .NET Core 6 / VS 2022 解決方法:DB連結字串 ConnectionString 需要額外加上 TrustServerCertificate=true。不然會出現錯誤 以 appsettings.json 設定檔為例
Thumbnail
假如你開發了一個網站,有user登入的功能,駭客故意輸入SQL語法來破壞原本的SQL結構,這就是SQL注入攻擊。