avatar
文章
212
標籤
444
分類
9
首頁
頁面
  • 歸檔
  • 標籤
  • 分類
關於
kyosora 筆記
搜尋
首頁
頁面
  • 歸檔
  • 標籤
  • 分類
關於

SQL

SQL Server 空間查詢操作指南
發表於2024-11-01|程式設計
SQL Server 空間查詢操作指南前言在處理地理資訊系統(GIS)時,SQL Server 提供了一系列強大的空間查詢工具。本文將詳細介紹這些工具的使用方法,幫助您更有效地處理空間資料。 一、基本空間關係判斷1. 包含關係123456789-- A.STContains(B):判斷 A 是否包含 B-- 最常用於判斷點位是否在某個範圍內SELECT * FROM Points WHERE @polygon.STContains(point_geometry) = 1-- A.STWithin(B):判斷 A 是否在 B 內-- 與 STContains 相反,從點位角度判斷SELECT * FROM Points WHERE point_geometry.STWithin(@polygon) = 1 2. 相交關係12345678-- A.STIntersects(B):判斷 A 和 B 是否相交-- 適合判斷兩個範圍是否有重疊SELECT * FROM ZonesWHERE zone1_geometry.STIntersects(zone2_geometry) = 1--...
如何快速查詢資料庫檢視表(View)的欄位資訊
發表於2024-10-23|程式設計
今天遇到長官要求提供所需的資料訊息,因為要求的資料欄位是由多個資料表組合而成,要一個一個去查看原始資料表相當費時。本文介紹如何用 SQL 直接查出檢視表的欄位資訊。 各資料庫系統的查詢方式Microsoft SQL Server1234567891011121314SELECT c.name AS ColumnName, t.name AS DataType, c.max_length AS MaxLength, c.precision AS NumericPrecision, c.scale AS NumericScale, c.is_nullable AS IsNullable, ISNULL(dc.definition, '') AS DefaultValueFROM sys.views vINNER JOIN sys.columns c ON v.object_id = c.object_idINNER JOIN sys.types t ON c.user_type_id = t.user_type_idLE...
SQL優化:處理百萬級資料表的結構修改
發表於2024-09-27|資料庫
SQL優化:處理百萬級資料表的結構修改一張上百萬筆的資料表,直接下 ALTER TABLE 加個欄位,結果整張表被鎖住、線上查詢全部排隊等待、應用程式逾時。這是動大表時最常踩的雷。底下記錄一個我在宜蘭下水道專案實際用過的做法:不直接改原表,而是建一張新結構的表、分批把資料搬過去,再交換表名。 先講清楚一件事:這篇前半段的概念示意用 MySQL 語法,後半段的實戰程式碼是 SQL Server(T-SQL)。兩套資料庫在「建空表」和「換表名」這兩步的語法差很多,不能照抄互換,文中會逐一標明。 為什麼不直接 ALTER TABLE當資料表的記錄數量上到百萬、千萬級別,直接執行 ALTER TABLE 很可能撐很久甚至逾時。原因是不少結構變更會走「重建整張表」的路徑:資料庫要複製整張表的內容、期間對表加上 schema 修改鎖,其他查詢和寫入只能等。表越大,鎖的時間越長,線上服務就越可能受影響。 不同資料庫、不同版本對 online DDL 的支援程度不一樣,有些操作(例如某些情況下加欄位)其實能做到不重建表。但一旦碰到需要重建的變更,又不想冒鎖表風險,「自己控制節奏分批搬」就是個可控...
SQL中的CASE語法:強大而靈活的條件表達式
發表於2024-09-19|程式設計
SQL中的CASE語法:強大而靈活的條件表達式CASE 語法讓查詢裡的條件判斷變得直接,根據不同情況回傳不同結果,不需要在應用層多繞一圈。 CASE語法的基本結構CASE 有兩種寫法:簡單 CASE 和搜索 CASE。 簡單CASE語法123456CASE 表達式 WHEN 值1 THEN 結果1 WHEN 值2 THEN 結果2 ... [ELSE 其他結果]END 搜索CASE語法123456CASE WHEN 條件1 THEN 結果1 WHEN 條件2 THEN 結果2 ... [ELSE 其他結果]END 簡單 CASE 是對單一表達式做等值比對,搜索 CASE 則每個 WHEN 都是獨立條件,能處理範圍、NULL、複合邏輯,彈性更大。 CASE語法的特點 靈活:條件邏輯可以很複雜,包含範圍、複合條件、NULL 判斷 可讀:比一堆巢狀 IF 或應用層後處理清楚 通用:SELECT、WHERE、ORDER BY、GROUP BY、UPDATE 都能用 實際應用場景例子1:根據成績分級1234567891011SELECT...
SQL查詢重複資料指南
發表於2024-06-22|程式設計
資料表裡出現重複記錄,通常有幾個來源:ETL 流程沒做冪等性保護、應用層缺少唯一約束、或手動匯入時重複執行。本文介紹幾種查法與對應的效能取捨。 目錄 什麼是重複資料? 基礎查詢方法 進階查詢技巧 實務案例分析 效能優化建議 1. 什麼是重複資料?重複資料指的是在資料表中,某些欄位或欄位組合的值完全相同的記錄。例如,在員工資料表中,可能會出現相同姓名、生日和部門的多筆記錄。 2. 基礎查詢方法2.1 使用 GROUP BY 和 HAVING最基本的查詢重複資料方式是使用 GROUP BY 和 HAVING 子句: 1234SELECT 欄位1, 欄位2, COUNT(*) as 重複次數FROM 資料表GROUP BY 欄位1, 欄位2HAVING COUNT(*) > 1; 2.2 查看重複記錄的完整資訊若要查看重複記錄的所有欄位資訊,可以使用以下方式: 1234567891011WITH 重複資料 AS ( SELECT 欄位1, 欄位2 FROM 資料表 GROUP BY 欄位1, 欄位2 HAVING COUNT(*) > 1)SEL...
在 SQL Server 中尋找忘記的欄位位置
發表於2024-05-23|程式設計
前言幾百張表的資料庫,欄位名稱記不住放在哪張表——一張張展開 SSMS 物件總管根本沒有效率。這篇整理幾種用系統視圖直接查的方式,從基礎模糊搜尋到跨資料庫都有,下次忘了直接拿來用。 基本搜尋方法最直接的做法是透過 sys.tables 和 sys.columns 這兩個系統視圖 JOIN 起來查: 1234567891011SELECT t.name AS TableName, c.name AS ColumnNameFROM sys.tables tINNER JOIN sys.columns c ON t.object_id = c.object_idWHERE c.name LIKE '%YourColumnName%'ORDER BY TableName, ColumnName; 使用說明 將 YourColumnName 替換成你要搜尋的欄位名稱 % 符號代表萬用字元,可以做模糊搜尋 查詢結果會顯示所有符合的資料表名稱及欄位名稱 進階搜尋技巧只知道欄位名稱還不夠,通常還要確認型別、長度、能不能為空。加...
avatar
kyosora
技術探索與學習分享
文章
212
標籤
444
分類
9
GitHub
最新文章
日產 3 萬 7 千行 AI 程式碼很猛?有人掀開 YC 執行長網站的引擎蓋
日產 3 萬 7 千行 AI 程式碼很猛?有人掀開 YC 執行長網站的引擎蓋2026-07-08
Fable 5 只有一次機會,我沒叫它寫程式:讓最強模型幫接班的弱模型立制度
Fable 5 只有一次機會,我沒叫它寫程式:讓最強模型幫接班的弱模型立制度2026-07-07
封 AI 爬蟲卻把 Googlebot 一起擋掉?Cloudflare 新版 AI 流量控制的三個分類與一個期限
封 AI 爬蟲卻把 Googlebot 一起擋掉?Cloudflare 新版 AI 流量控制的三個分類與一個期限2026-07-02
乾淨的 GitHub repo 也能讓 Claude Code 幫你開反向 shell
乾淨的 GitHub repo 也能讓 Claude Code 幫你開反向 shell2026-07-02
18 天前 Fable 5 被政府按掉,今天 Anthropic 連 Sonnet 5 一起還回來
18 天前 Fable 5 被政府按掉,今天 Anthropic 連 Sonnet 5 一起還回來2026-07-01
分類
  • AI工具實戰86
  • AI產業觀察44
  • 前後端開發17
  • 工具與生產力45
  • 程式設計53
  • 系統與維運17
  • 職涯與反思20
  • 資料庫11
  • 資訊安全21
標籤
LLMClaudeDeepSeekGeminiAI 趨勢OpenRouterCSS本地LLMbenchmarkATLAS成本分析AI AgentNemoClawOpenClawGTC 2026框架選型Claude Code多 Agent 系統開發者工具GitHub 開源CursorTemporal系統可靠性工程實踐Firefox安全漏洞AI安全研究LLM應用GitHub TrendingAI投資產業分析開發者生態NVIDIAAI Coding Assistant安全性開發經驗GPT-5.4Computer Use自動化
歸檔
  • 2026年07月 5
  • 2026年06月 22
  • 2026年05月 17
  • 2026年04月 5
  • 2026年03月 47
  • 2026年02月 3
  • 2026年01月 2
  • 2025年12月 2
網站資訊
文章數量 :
212
運行時間 :
總字數 :
395.3k
最後更新時間 :
© 2024 - 2026 By kyosora
搜尋
資料載入中