讀SQL學習指南(第3版)筆記05_過濾

来源:https://www.cnblogs.com/lying7/archive/2023/08/25/17648234.html
-Advertisement-
Play Games

![](https://img2023.cnblogs.com/blog/3076680/202308/3076680-20230822120346228-1599813347.png) # 1. 不需要考慮排除任何列 ## 1.1. 清除數據表中所有的內容 ## 1.2. 暫存新數據倉庫的數據 # ...


1. 不需要考慮排除任何列

1.1. 清除數據表中所有的內容

1.2. 暫存新數據倉庫的數據

1.3. 向數據表中新添一列後

1.4. 修改數據表中的所有行

1.5. 檢索消息隊列表中的所有行

2. where子句

2.1. 可以在其中指定一個或多個過濾條件,用於限制SQL語句處理的行數

2.2. 使用括弧

2.2.1. 同時使用運算符and和or的3個或以上條件,應該使用括弧向資料庫伺服器和其他閱讀代碼的人表明意圖

2.3. 使用not運算符

3. 構建條件

3.1. 條件由一個或多個表達式並通過一個或多個運算符組合而成

3.2. 表達式

3.2.1. 數字

3.2.2. 數據表或視圖中的列

3.2.3. 字元串字面量

3.2.4. 內建函數

3.2.4.1. concat('Learning', ' ', 'SQL')

3.2.5. 子查詢

3.2.6. 表達式列表

3.2.6.1. ('Boston', 'New York', 'Chicago')

3.3. 運算符

3.3.1. 比較運算符

3.3.1.1. =、!=、<、>、<>、like、in和between

3.3.2. 算術運算符

3.3.2.1. +、−、*和/

4. 條件類型

4.1. 相等條件

4.1.1. 一個表達式與另一個表達式之間的相等關係

4.2. 不等條件

4.2.1. 用於斷言兩個表達式之間的不等關係

4.3. 範圍條件

4.3.1. 檢查表達式的值是否處於某個範圍

4.3.2. 通常用於數值型或時間型數據

4.3.3. between運算符

4.3.3.1. 當需要同時限制範圍的上限和下限時,可以選擇使用between運算符構建單個查詢條件,而不用兩個單獨的條件

4.3.3.2. 首先必須指定範圍的下限(在between之後),然後指定範圍的上限(在and之後)

4.3.4. 字元串範圍

4.3.5. 成員條件

4.4. 匹配條件

4.4.1. 使用通配符

4.4.1.1. 以某個字元開始(或結束)的字元串

4.4.1.2. 以某個子串開始(或結束)的字元串

4.4.1.3. 在字元串中的任意位置包含某個字元的字元串

4.4.1.4. 在字元串中的任意位置包含某個子串的字元串

4.4.1.5. 具備特定格式(無關單個字元)的字元串

4.4.1.6. mysql

 -> SELECT last_name, first_name
    -> FROM customer
    -> WHERE last_name LIKE 'Q%' OR last_name LIKE 'Y%';

4.4.2. 使用正則表達式

4.4.2.1. regexp運算符接受一個正則表達式

4.4.2.1.1. mysql
 -> SELECT last_name, first_name
    -> FROM customer
    -> WHERE last_name REGEXP '^[QY]';
4.4.2.1.2. 該查詢現在只包含了使用正則表達式的一個條件,不再是使用通配符的兩個條件

4.4.2.2. 在Oracle Database中,使用regexp_like函數代替regexp運算符

4.4.2.3. SQL Server允許正則表達式與like運算符配合使用

5. null

5.1. 沒有合適的值

5.1.1. ATM機上的自助交易並不需要employee ID列

5.2. 值未確定

5.2.1. 在創建客戶所在行時不知道其ID

5.3. 值未定義

5.3.1. 為某個尚未添加到資料庫的產品創建賬戶

5.4. 表達式可以為null,但不能等於(never equal)null

5.5. 兩個null值不相等

5.5.1. 為了測試表達式是否為null,需要使用is null運算符

5.6. 如果要查看某列是否已經被賦值,可以使用is not null運算符

5.7. 使用一個不熟悉的資料庫時,最好是找出數據表中哪些列允許出現null,這樣就可以在過濾條件中採取適當的措施,以防止遺漏數據


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前言 筆者之前在公司搭建過一套生產管理系統,該系統要求能和硬體進行串口通信,同時又要提供後臺信息查詢。筆者給出的解決方案就是:MAUI + Blazor,這樣只需要提供一套UI,就能滿足桌面端、移動端和Web端三種不同應用場景。今天要介紹的就是桌面端的開發實現。 開發技術 .NET 6 + MAUI ...
  • 【前言】 本文講述的.NET數據分頁方法為【史上最強】,已被多家大型科技公司實戰採用 & 也被圈內多家知名IT培訓機構轉載收藏。 【正文】 支持.Net Core(2.0及以上)與.Net Framework(4.5及以上) 可以部署在Docker, Windows, Linux, Mac。 數據分 ...
  • # Unity UGUI的Slider(滑動條)件組的介紹及使用 ## 1. 什麼是Slider組件? Slider(滑動條)是Unity UGUI中的一種常用UI組件用,於在用戶界面中實現滑動選擇的功能。通過拖動滑塊,用戶可以選擇一個數值範圍的內值。 ## 2. Slider組件的工作原理 Sli ...
  • # 記錄一次EF實體跟蹤錯誤 # 前言 在我寫文章編輯介面的,出現了一個實體跟蹤的錯誤,詳情如下 > System.InvalidOperationException: The instance of entity type 'Tag' cannot be tracked because anoth ...
  • # UGUI的Image(圖片)組件的介紹及使用 ## 1. 什麼是UGUI的Image(圖片)組件? UGUI的Image(圖片)組件是Unity引擎中的一種UI組件,用於顯示2D圖像。它提供了一種簡單而靈活的方式來在游戲中載入和顯示圖片。 ## 2. 為什麼要使用UGUI的Image(圖片)組件 ...
  • # 記錄http請求 ## 環境 * .net7 ## 一、過濾器(Filter) 這個過程用的的是操作過濾器(`ActionFilter`) ## 二、 ### 2.1 繼承`IAsyncActionFilter` ### 2.2 重寫`OnActionExecutionAsync` `OnAct ...
  • [toc] # Linux運維工程師面試題(2) > 祝各位小伙伴們早日找到自己心儀的工作。 > 持續學習才不會被淘汰。 > 地球不爆炸,我們不放假。 > 機會總是留給有有準備的人的。 > 加油,打工人! ## 1 訪問一個網站的流程 1. 打開瀏覽器,輸入網址。首先查找本地緩存,如果有就打開頁面, ...
  • 操作系統是電腦不可或缺的一部分,它連接著硬體和應用程式。內核是操作系統的核心,負責管理進程和線程、記憶體、硬體設備以及提供系統調用介面。電腦啟動過程中,ROM負責載入並執行BIOS程式,而RAM用於存儲運行中的程式和數據。系統調用是操作系統提供給應用程式的介面,通過系統調用可以訪問操作系統的功能。... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...