Navicat 部落格

SQL 的半聯結(SEMI JOIN) 2024 年 10 月 15 日,由 Robert Gravelle 撰寫

大多數資料庫開發人員和管理員對標準的內部、外部、左方和右方聯結類型都很熟悉。雖然這些聯結可以使用 ANSI SQL 編寫,但還有其他類型的聯結是基於關係代數運算子,這些運算子在 SQL 中並沒有語法可以表示。今天我們將探討其中一種聯結類型:半聯結(SEMI JOIN)。下週我們將研究類似的反聯結。為了更好地理解這些類型的聯結是如何運作,我們將使用 Navicat Premium Lite 17 在 PostgreSQL 的 dvdrental 資料庫執行一些 SELECT 查詢。它是一個基於 MySQL Sakila 範例資料庫的免費資料庫。

使用HAVING 子句篩選彙總欄位 2024 年 10 月 8 日,由 Robert Gravelle 撰寫

如果你已接觸編寫 SQL 查詢一段時間,你可能對 WHERE 子句非常熟悉。雖然 WHERE 子句對彙總欄位沒有影響,但有一種方法可以根據彙總值篩選記錄,那就是使用 HAVING 子句。本文將介紹它的工作原理,並提供一些在 SELECT 查詢中使用它的範例。

使用 EXISTS 編寫 SELECT 查詢 2024 年 9 月 26 日,由 Robert Gravelle 撰寫

SQL 的 EXISTS 運算子為我們提供了一種根據某些其他資料的存在(或不存在)來擷取資料的簡單方法。更具體地說,它是一個邏輯運算子,用於評估子查詢的結果並傳回一個布林值(Boolean),指示是否傳回列。雖然 IN 運算子可用於類似的目的,但仍需要注意一些差異。本文將透過幾個範例介紹如何使用 EXISTS 運算子,並提供有關何時使用 EXISTS 而不是 IN 的一些指引。

尋找通用 SQL 語法 2024 年 9 月 12 日,由 Robert Gravelle 撰寫

在九十年代中期,Sun Microsystems 推出了一種可以「一次編寫,到處執行」的語言。這種語言就是 Java。儘管 Java 後來成為迄今為止最受歡迎的程式語言之一,但他們的口號事實證明有點樂觀。Java 語言的發展過程與 SQL 的發展過程確實有一些相似之處。它也可以從一個資料庫移植到另一個資料庫,甚至跨作業系統,而且幾乎不需要進行任何修改。至少,這是夢想。在現實世界中,生產級程式碼往往需要一些調整才能在新環境中運作。本篇文章將概述不同資料庫供應商之間 SQL 語法可能不同的一些原因。

在 Navicat BI 中建立自訂欄位:計算欄位 2024 年 9 月 6 日,由 Robert Gravelle 撰寫

在資料庫設計和開發中,避免存儲任何可以從其他欄位計算或重建的資料是一個行之有效的做法。因此,在使用 Navicat BI 構建圖表時,你可能會缺少一些資料。但這並不是問題,因為 Navicat BI 專門提供了計算欄位來解決這個問題。在今天的文章中,我們將使用計算欄位來建立一個圖表,顯示每位客戶平均租賃時間,即客戶在歸還電影之前保留電影的時間。與本系列中的大多數文章一樣,我們會使用免費 「dvdrental」範例資料庫 中的資料。

分享
部落格封存檔