使用函數處理數據

来源:https://www.cnblogs.com/ao-yu-a/archive/2019/06/23/11073552.html
-Advertisement-
Play Games

/* 函數處理數據的一個問題就是每個DBMS都有特定的函數,在不同的DBMS中,各個函數的名稱和語法可能極其不同這意味著特定SQL實現編寫的代碼在其他視線中可能不正常*/ -- 在MySQL中: /* 提取字元串的組成部分 SUBSTRING()數據類型轉換 CONVERT()取當前日期 CURDA ...


/*
函數處理數據的一個問題就是每個DBMS都有特定的函數,
在不同的DBMS中,各個函數的名稱和語法可能極其不同
這意味著特定SQL實現編寫的代碼在其他視線中可能不正常
*/

-- 在MySQL中:
/* 提取字元串的組成部分 SUBSTRING()
數據類型轉換 CONVERT()
取當前日期 CURDATE()
*/
#如果使用函數,要註意註釋,因為不同的SQL伺服器函數含義不同

-- 大多數DBMS支持的函數
/*
1.處理文本字元串(如刪除或填充值,轉換值為大寫或小寫)的文本函數
2.用於在數值數據上進行算術操作(如返回絕對值,進行代數運算)的數值函數
3.用於處理日期和時間值並從這些之中提取特定成分(如返回兩個日期之差,檢查日期有效性)的日期和時間函數
4.返回DBMS正使用的特殊信息(如返回用戶登錄信息)的系統函數
*/

-- 文本處理函數 (UPPER())
SELECT vend_name,UPPER(vend_name) AS vend_name_upcase
FROM Vendors
ORDER BY vend_name;

/*
常用的文本處理函數:
LEFT()(或使用子字元串函數) 返回字元串左邊的字元
LENGTH()(也使用DATALENGTH()或LEN()) 返回字元串的長度
LOWER()(Access使用LCASE()) 將字元串轉換為小寫
LTRIM() 去掉字元串左邊的空格
RIGHT()(或使用子字元串函數) 返回字元串右邊的函數
RTRIM() 去掉字元串右邊的空格
SOUNDEX() 返回字元串的SOUNDEX值
UPPER()(Access使用UCASE()) 將字元串轉換為大寫
*/
#SOUNDEX是一個將任何文本串轉換為描述其語音表示的字母數字模式的演算法
/*考慮了累的發音字元和音節,使得能對字元串進行發音比較而不是字母比較*/
------------------------------
-- 對比
SELECT cust_name,cust_contact
FROM Customers
WHERE cust_contact = 'Michael GREEN';

#輸出結果沒有值原因是信息錄入的時候輸入錯了,聯繫名實際上應該是Michael Green

 

SELECT cust_name,cust_contact
FROM Customers
WHERE SOUNDEX(cust_contact) = SOUNDEX('Michael Green');

-- 日期和時間處理函數(以特殊的格式存儲,每種DBMS都有自己的特殊形式)
/* 由於應用程式一般不使用日期和時間的存儲格式,所以日期和時間函數總是用來讀取、統計和處理這些值。它們的可移植性最差*/
#MySQL中使用名為YEAR()的函數從日期中提取年份
SELECT order_num
FROM Orders
WHERE YEAR(order_date) = 2012;

-- 數值處理函數(僅處理數值數據,主要用於代數、三角或幾何運算)
/*
常用數值處理函數:
ABS() 返回一個數的絕對值
COS() 返回一個角度的餘弦
EXP() 返回一個數的指數值
PI() 返回圓周率
SIN() 返回一個角度的正弦
TAN() 返回一個角度的正切
*/


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

-Advertisement-
Play Games
更多相關文章
  • 重新安裝了VMware和Ubuntu,但是命令行提示符太單調,不美觀,如何更改呢。於是在網上巴拉巴拉搜尋一番。 1.更改PS1環境變數,這倆都可以,我選擇第一個: 2.在普通用戶下 ls-all,選擇.bashrc在文件最後插入上面的export PS1=代碼,然後輸入以下命令即可生效。 3.再修改 ...
  • 首先大數據這個趨勢已經很明瞭,但是進入這個領域有門檻,而且不小,要有心理準備,自學要因人而異,沒有基礎的前提下,有難度,後面我會給你一些學習的建議。 ...
  • 五、數據查詢語言(DQL) (重中之重) 六、事務控制語言(TCL) ...
  • 1、set key value //設置、修改值 2、get key //如果key不存在,返回nil,表示空。 3、type key //返回key對應的value的數據類型 4、rename key newKey //重命名key,即修改鍵的名稱。當key和newKey重名時,或者key不存在時 ...
  • redis.windows.conf中的部分參數說明 redis.windows.conf配置的是Redis伺服器。 bind 127.0.0.1 //設置Redis伺服器的ip地址 port 6379 //指定埠號 timeout 300 //當客戶端閑置多長時間後關閉連接,如果指定為 0,表示 ...
  • 一、資料庫基本概念 1、關係資料庫 (1)關係操作 關係操作所操作的對象和結果都是集合,成為一次一集合的方式。而非關係數據模型的資料庫操作方式為一次一記錄的方式。 關係數據模型中最重要的是關係查詢操作,主要分為:選擇(select)、投影(project)、連接(jion)、除(divide)、並( ...
  • -- 聚集函數(方便分析和報表生成,其實也就是進行簡單的統計學的處理,不需要返回原表來浪費時間)/* 比如:1.確定表中某些行數(或者滿足某個條件或包含某個特定值的行數) 2.獲得表中某些行的和 3.找出表列(或所有行或某些特定的行)的最大值、最小值、平均值 (在各種主要SQL實現中得到了相當一致的 ...
  • 一、新增一個普通用戶bigdata 設置bigdata用戶具有root許可權 二、配置靜態ip 若機器為克隆的則該文件下存在多個物理地址, 刪除eth0該行;將eth1修改為eth0,同時記住物理ip地址 三、修改主機名 四、關閉防火牆 1)查看防火牆開機啟動狀態 2)關閉防火牆 五、在opt目錄下創 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...