Navicat 部落格

在生產環境中測試 SQL 的危險 2021 年 12 月 1 日,由 Robert Gravelle 撰寫

i-dont-always-test-my-code-but-when-i-do-its-already-in-production

有多少次你發現某個查詢對經過清理的資料進行測試時能發揮充分的效能,但只在生產環境中卻只看到它停止一次?由於工作負載和資料量等環境之間的差異,這種情況一直在發生。因為這個原因,你可能會在生產環境中嘗試你的查詢。畢竟,調整生產查詢的最快方法是在生產伺服器上,不是嗎?雖然這是正確,但仍有許多危險等待著那些愚蠢到沒有採取保障措施和協議的人。在本文中,我們將探討在生產環境中測試查詢的一些相關風險。

SQL Server 中的 Unicode 和非 Unicode 字串資料類型 2021 年 11 月 19 日,由 Robert Gravelle 撰寫

SQL Server 提供了多種資料類型,支援你想儲存的所有類型的資料。你可能已經猜到,資料類型是一個屬性,用於指定欄可以儲存資料的類型。它可以是整數、字元字串、貨幣、日期和時間等。在資料庫設計人員和開發人員之間引起混淆的一種資料類型是用於儲存字元字串的資料類型。字元字串是作為一組操作的一系列字元。在關聯式資料庫的內容中,字元字串資料類型是那些讓你儲存固定長度(char)或可變長度資料(varchar)的資料類型。此外,SQL Server 將其字串類型分為兩大類:Unicode 和非 Unicode。Unicode 類型有 nchar、nvarchar 和 ntext,而非 Unicode 類型有 char、varchar/varchar (max) 和 text。在今天的文章中,我們將比較這兩個類別,以決定何時使用它們。

SQL 陳述式中 WHERE 1=1 的用途 2021 年 11 月 8 日,由 Robert Gravelle 撰寫

你是否曾在 SELECT 查詢中看到過 WHERE 1=1 條件。我在許多不同的查詢和許多 SQL 引擎中都有看過。這條件顯然意味著 WHERE TRUE,所以它只是傳回與沒有 WHERE 子句時相同的查詢結果。此外,由於查詢最佳化工具幾乎肯定會刪除它,因此對查詢執行時間沒有影響。那麼,WHERE 1=1 的用途是什麼?這就是我們今天要在這裡回答的問題!

Null 值和 SQL Count() 函式 2021 年 10 月 25 日,由 Robert Gravelle 撰寫

早在 2020 年 3 月,關聯式資料庫系統中的 NULL 值及其用途一文就介紹了 NULL 值及其在關聯式資料庫中的特殊意義。那篇文章還描述了如何在資料庫資料表中允許 NULL 值,以及如何在査詢中引用它們。在今天的文章中,我們將學習如何將 NULL 與 SQL Count() 函式結合起來,以實現各種目標。

理解 SQL Server 的 CROSS APPLY 和 OUTER APPLY 査詢 - 第 2 部分 2021 年 10 月 19 日,由 Robert Gravelle 撰寫

CROSS APPLY 和 OUTER APPLY 範例

上一篇文章介紹了 APPLY 運算子,並涵蓋了它與一般 JOIN 有何不同。在今天的後續部分中,我們將比較 APPLY 與 INNER JOIN 的效能,並學習如何將 APPLY 與資料表值函式一起使用。

Navicat 文章
頻道記錄
分享
部落格封存檔