【技術積累】Mysql中的SQL語言【技術篇】【三】

来源:https://www.cnblogs.com/yyyyfly1/archive/2023/07/13/17552527.html
-Advertisement-
Play Games

博客推行版本更新,成果積累制度,已經寫過的博客還會再次更新,不斷地琢磨,高質量高數量都是要追求的,工匠精神是學習必不可少的精神。因此,大家有何建議歡迎在評論區踴躍發言,你們的支持是我最大的動力,你們敢投,我就敢肝 ...


聚合函數

SUM函數

在MySQL中,SUM函數是用於計算數值列的總和的聚合函數。它接受一個數值列作為參數,並返回該列中所有值的總和。

以下是一個使用SUM函數的示例:

假設我們有一個名為"orders"的表,其中有兩個欄位:"product"和"amount",用於記錄不同產品的訂單金額。現在我們希望計算出所有訂單的總金額。

現在,我們可以使用SUM函數來計算訂單金額的總和:

SELECT SUM(amount) AS total_amount FROM orders;

該查詢將返回一個名為"total_amount"的結果集,其中包含了所有訂單金額的總和。在此案例中,結果將是700。

以上示例中的SQL語言格式與上述介紹的AVG函數示例相似,只是使用了SUM函數來計算總和。SQL語言的其他關鍵部分和解釋與前述相同。

AVG函數

在MySQL中,AVG函數是用於計算數值列的平均值的聚合函數。它接受一個數值列作為參數,並返回該列中所有值的平均值。

以下是一個使用AVG函數的示例:

假設我們有一個名為"sales"的表,其中有兩個欄位:"product"和"quantity",用於記錄不同產品的銷售數量。現在我們希望計算出所有產品的平均銷售數量。

現在,我們可以使用AVG函數來計算平均銷售數量:

SELECT AVG(quantity) AS average_quantity FROM sales;

該查詢將返回一個名為"average_quantity"的結果集,其中包含了所有銷售數量的平均值。在此案例中,結果將是17.5。

SQL語言是用於與關係型資料庫交互的標準化查詢語言。它用於對資料庫中的數據進行查詢、插入、更新和刪除操作。

上述示例中的SQL語言包括了以下幾個關鍵部分:
- CREATE TABLE用於創建一個新的表。
- INSERT INTO用於向表中插入數據。
- SELECT用於查詢數據。
- AVG(quantity)表達了使用AVG函數計算"quantity"列的平均值。
- AS用於為查詢結果中的列指定別名。
- FROM指定了要查詢的表。
- WHERE和ORDER BY是SQL中的條件和排序子句,用於對查詢結果進行篩選和排序。

總的來說,SQL語言是一種高級的資料庫查詢語言,可以用於管理和操作關係型資料庫中的數據。它使用了各種關鍵字、函數和語法結構來執行各種操作,如創建表、插入數據、查詢數據和更新數據。

COUNT函數

在MySQL中,COUNT函數是用於計算行數的聚合函數。它接受一個表達式作為參數,並返回滿足該表達式條件的行數。

以下是一個使用COUNT函數的示例:

假設我們有一個名為"customers"的表,其中有一個欄位:"id",用於記錄每個顧客的唯一標識符。現在我們希望計算出總共有多少個顧客。

現在,我們可以使用COUNT函數來計算顧客的數量:

SELECT COUNT(*) AS total_customers FROM customers;

該查詢將返回一個名為"total_customers"的結果集,其中包含了顧客的總數。在此案例中,結果將是4。

在上述示例中,COUNT函數的參數是"*",表示計算所有行的數量。COUNT函數還可以接受特定列名作為參數,例如COUNT(id),表示計算id列中非空值的數量。

SQL語言的其他關鍵部分和解釋與前述相同。總的來說,COUNT函數是用於計算行數的聚合函數,用於獲取特定條件下的行數或表中的總行數。

MAX函數

在MySQL中,MAX函數是用於計算數值列的最大值的聚合函數。它接受一個數值列作為參數,並返回該列中的最大值。

以下是一個使用MAX函數的示例:

假設我們有一個名為"products"的表,其中有兩個欄位:"product"和"price",用於記錄不同產品的價格。現在我們希望找到最高價格的產品。

現在,我們可以使用MAX函數來找到價格最高的產品:

SELECT MAX(price) AS highest_price FROM products;

該查詢將返回一個名為"highest_price"的結果集,其中包含了最高價格的產品的價格。在此案例中,結果將是20.49。

在上述示例中,MAX函數的參數是"price",表示要找到"price"列中的最大值。MAX函數還可以接受其他數值表達式作為參數,例如MAX(price * quantity),表示計算"price"和"quantity"列乘積的最大值。

SQL語言的其他關鍵部分和解釋與前述相同。總的來說,MAX函數是用於計算最大值的聚合函數,用於查找數值列中的最大值。

MIN函數

在MySQL中,MIN函數是用於計算數值列的最小值的聚合函數。它接受一個數值列作為參數,並返回該列中的最小值。

以下是一個使用MIN函數的示例:

假設我們有一個名為"products"的表,其中有兩個欄位:"product"和"price",用於記錄不同產品的價格。現在我們希望找到最低價格的產品。

現在,我們可以使用MIN函數來找到價格最低的產品:

SELECT MIN(price) AS lowest_price FROM products;

該查詢將返回一個名為"lowest_price"的結果集,其中包含了最低價格的產品的價格。在此案例中,結果將是10.99。

在上述示例中,MIN函數的參數是"price",表示要找到"price"列中的最小值。MIN函數還可以接受其他數值表達式作為參數,例如MIN(price * quantity),表示計算"price"和"quantity"列乘積的最小值。

SQL語言的其他關鍵部分和解釋與前述相同。總的來說,MIN函數是用於計算最小值的聚合函數,用於查找數值列中的最小值。

數學函數

ROUND函數

MySQL中的ROUND函數用於將一個數值四捨五入到指定的小數位數。

語法:

ROUND(number, decimals)

參數說明:
- number:要進行四捨五入的數值。
- decimals:要保留的小數位數。可以是負數,表示要四捨五入的整數位數。

案例:
假設有一個訂單表orders,包含以下欄位:
- order_id:訂單ID
- total_amount:訂單總金額

要求使用ROUND函數,將訂單總金額保留兩位小數,並按金額從大到小查詢訂單。

SQL語句:

SELECT order_id, ROUND(total_amount, 2) AS rounded_amount
FROM orders
ORDER BY rounded_amount DESC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. ROUND(total_amount, 2) AS rounded_amount:使用ROUND函數將total_amount欄位保留兩位小數,並將結果命名為rounded_amount。
3. FROM orders:指定要查詢的數據表為orders。
4. ORDER BY rounded_amount DESC:按照rounded_amount欄位的值從大到小進行排序。

這個例子中,假設訂單總金額為:
- 10.3456
- 20.6789
- 30.1234

經過ROUND函數的處理後,得到的結果為:
- 10.35
- 20.68
- 30.12

最終的查詢結果將按照金額從大到小進行排序,並顯示訂單ID和保留兩位小數後的金額。

ABS函數

MySQL中的ABS函數用於返回一個數的絕對值。

語法:

ABS(number)

參數說明:
- number:要返回絕對值的數值。

案例:
假設有一個學生成績表grades,包含以下欄位:
- student_id:學生ID
- score:學生成績

要求使用ABS函數,返回學生成績的絕對值,並按照絕對值從小到大查詢學生成績。

SQL語句:

SELECT student_id, ABS(score) AS absolute_score
FROM grades
ORDER BY absolute_score ASC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. ABS(score) AS absolute_score:使用ABS函數返回score欄位的絕對值,並將結果命名為absolute_score。
3. FROM grades:指定要查詢的數據表為grades。
4. ORDER BY absolute_score ASC:按照absolute_score欄位的值從小到大進行排序。

假設學生成績為:
- 學生A, 成績-80
- 學生B, 成績95
- 學生C, 成績-60

經過ABS函數的處理後,得到的結果為:
- 學生A, 絕對值80
- 學生B, 絕對值95
- 學生C, 絕對值60

最終的查詢結果將按照絕對值從小到大進行排序,並顯示學生ID和絕對值後的成績。

CEIL函數

MySQL中的CEIL函數用於將一個數值向上取整,返回不小於該數的最小整數。

語法:

CEIL(number)

參數說明:
- number:要進行向上取整的數值。

案例:
假設有一個商品表products,包含以下欄位:
- product_id:商品ID
- price:商品價格(單位:元)

要求使用CEIL函數,將商品價格向上取整,並按照取整後的價格從大到小查詢商品。

SQL語句:

SELECT product_id, CEIL(price) AS rounded_price
FROM products
ORDER BY rounded_price DESC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. CEIL(price) AS rounded_price:使用CEIL函數將price欄位向上取整,並將結果命名為rounded_price。
3. FROM products:指定要查詢的數據表為products。
4. ORDER BY rounded_price DESC:按照rounded_price欄位的值從大到小進行排序。

假設商品價格為:
- 商品A,價格4.56元
- 商品B,價格9.99元
- 商品C,價格2.45元

經過CEIL函數的處理後,得到的結果為:
- 商品A,取整後價格5
- 商品B,取整後價格10
- 商品C,取整後價格3

最終的查詢結果將按照取整後的價格從大到小進行排序,並顯示商品ID和向上取整後的價格。

FLOOR函數

MySQL中的FLOOR函數用於將一個數值向下取整,返回不大於該數的最大整數。

語法:

FLOOR(number)

參數說明:
- number:要進行向下取整的數值。

案例:
假設有一個商品表products,包含以下欄位:
- product_id:商品ID
- price:商品價格(單位:元)

要求使用FLOOR函數,將商品價格向下取整,並按照取整後的價格從小到大查詢商品。

SQL語句:

SELECT product_id, FLOOR(price) AS rounded_price
FROM products
ORDER BY rounded_price ASC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. FLOOR(price) AS rounded_price:使用FLOOR函數將price欄位向下取整,並將結果命名為rounded_price。
3. FROM products:指定要查詢的數據表為products。
4. ORDER BY rounded_price ASC:按照rounded_price欄位的值從小到大進行排序。

假設商品價格為:
- 商品A,價格4.56元
- 商品B,價格9.99元
- 商品C,價格2.45元

經過FLOOR函數的處理後,得到的結果為:
- 商品A,取整後價格4
- 商品B,取整後價格9
- 商品C,取整後價格2

最終的查詢結果將按照取整後的價格從小到大進行排序,並顯示商品ID和向下取整後的價格。

字元串函數

CONTACT函數

MySQL中的CONCAT函數用於將多個字元串連接成一個字元串。

語法:

CONCAT(string1, string2, ...)

參數說明:
- string1, string2, ...:要連接的字元串。

案例:
假設有一個客戶表customers,包含以下欄位:
- customer_id:客戶ID
- first_name:客戶名
- last_name:客戶姓

要求使用CONCAT函數,將客戶的姓和名連接為一個完整的姓名,並按照姓氏字母順序查詢客戶。

SQL語句:

SELECT customer_id, CONCAT(last_name, ' ', first_name) AS full_name
FROM customers
ORDER BY last_name ASC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. CONCAT(last_name, ' ', first_name) AS full_name:使用CONCAT函數將last_name和first_name欄位連接為一個完整的姓名,並將結果命名為full_name。字元串之間可以用空格或其他字元進行分隔。
3. FROM customers:指定要查詢的數據表為customers。
4. ORDER BY last_name ASC:按照last_name欄位的值按照姓氏字母順序進行排序。

假設客戶數據為:
- 客戶A, 姓:張,名:三
- 客戶B, 姓:李,名:四
- 客戶C, 姓:王,名:五

經過CONCAT函數的處理後,得到的結果為:
- 客戶A, 完整姓名:張 三
- 客戶B, 完整姓名:李 四
- 客戶C, 完整姓名:王 五

最終的查詢結果將按照姓氏字母順序進行排序,並顯示客戶ID和完整姓名。

SUBSTRING函數

MySQL中的SUBSTRING函數用於返回一個字元串的子字元串。

語法:

SUBSTRING(string, start_position, length)


參數說明:
- string:要截取子字元串的原始字元串。
- start_position:截取子字元串的起始位置。
- length:要截取的子字元串的長度。

案例:
假設有一個用戶表users,包含以下欄位:
- user_id:用戶ID
- username:用戶名
- email:用戶電子郵件地址

要求使用SUBSTRING函數,截取用戶郵件地址的功能變數名稱,並按照功能變數名稱進行查詢用戶。

SQL語句:

SELECT user_id, SUBSTRING(email, LOCATE('@', email) + 1) AS domain
FROM users
ORDER BY domain ASC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. SUBSTRING(email, LOCATE('@', email) + 1) AS domain:使用SUBSTRING函數截取email欄位中從@符號後開始的子字元串,並將結果命名為domain。LOCATE函數用於找到@符號在email字元串中的位置。
3. FROM users:指定要查詢的數據表為users。
4. ORDER BY domain ASC:按照domain欄位的值進行升序排列。

假設用戶數據為:
- 用戶A, 郵件地址:[email protected]
- 用戶B, 郵件地址:[email protected]
- 用戶C, 郵件地址:[email protected]

經過SUBSTRING函數的處理後,得到的結果為:
- 用戶A, 功能變數名稱:gmail.com
- 用戶B, 功能變數名稱:yahoo.com
- 用戶C, 功能變數名稱:hotmail.com

最終的查詢結果將按照功能變數名稱進行排序,並顯示用戶ID和功能變數名稱。

LENGTH函數

MySQL中的LENGTH函數用於返回一個字元串的長度。

語法:

LENGTH(string)


參數說明:
- string:要計算長度的字元串。

案例:
假設有一個商品表products,包含以下欄位:
- product_id:商品ID
- name:商品名稱

要求使用LENGTH函數,查詢商品名稱的長度,並按照長度從長到短排序。

SQL語句:

SELECT product_id, name, LENGTH(name) AS name_length
FROM products
ORDER BY name_length DESC;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. LENGTH(name) AS name_length:使用LENGTH函數計算name欄位的長度,並將結果命名為name_length。
3. FROM products:指定要查詢的數據表為products。
4. ORDER BY name_length DESC:按照name_length欄位的值從長到短進行排序。

假設商品數據為:
- 商品A, 名稱:Pen
- 商品B, 名稱:Notebook
- 商品C, 名稱:Pencil

經過LENGTH函數的處理後,得到的結果為:
- 商品A, 名稱:Pen, 長度:3
- 商品B, 名稱:Notebook, 長度:8
- 商品C, 名稱:Pencil, 長度:6

最終的查詢結果將按照名稱長度從長到短進行排序,並顯示商品ID、名稱和名稱的長度。

時間函數

NOW函數

MySQL中的NOW函數用於返回當前日期和時間。

語法:

NOW()

案例:
假設有一個訂單表orders,包含以下欄位:
- order_id:訂單ID
- order_date:訂單日期

要求使用NOW函數,查詢當前日期和時間,並查詢訂單表中今天的所有訂單。

SQL語句:

SELECT order_id, order_date
FROM orders
WHERE DATE(order_date) = CURDATE();

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. FROM orders:指定要查詢的數據表為orders。
3. WHERE DATE(order_date) = CURDATE():使用DATE函數提取order_date欄位的日期部分,並與當天的日期進行比較。CURDATE函數返回當前日期。

假設訂單數據為:
- 訂單A, 日期:2022-02-15 10:30:45
- 訂單B, 日期:2022-02-16 12:15:30
- 訂單C, 日期:2022-02-15 14:20:00

如果當前日期為2022-02-15,經過查詢後,將返回以下結果:
- 訂單A, 日期:2022-02-15 10:30:45
- 訂單C, 日期:2022-02-15 14:20:00

最終的查詢結果將顯示訂單ID和日期,其中日期為當天的訂單。

CURDATE函數

MySQL中的CURDATE函數用於返回當前日期。

語法:

CURDATE()

案例:
假設有一個員工表employees,包含以下欄位:
- employee_id:員工ID
- hire_date:入職日期

要求使用CURDATE函數,查詢今天入職的所有員工。

SQL語句:

SELECT employee_id, hire_date
FROM employees
WHERE DATE(hire_date) = CURDATE();

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. FROM employees:指定要查詢的數據表為employees。
3. WHERE DATE(hire_date) = CURDATE():使用DATE函數提取hire_date欄位的日期部分,並與當前日期進行比較。CURDATE函數返回當前日期。

假設員工數據為:
- 員工A, 入職日期:2022-02-15
- 員工B, 入職日期:2022-02-16
- 員工C, 入職日期:2022-02-15

如果當前日期為2022-02-15,經過查詢後,將返回以下結果:
- 員工A, 入職日期:2022-02-15
- 員工C, 入職日期:2022-02-15

最終的查詢結果將顯示員工ID和入職日期,其中入職日期為當天的員工。

DATEDIFF函數

MySQL中的DATEDIFF函數用於計算兩個日期之間的差距,以天為單位。

語法:

DATEDIFF(date1, date2)

參數說明:
- date1:要計算差距的第一個日期。
- date2:要計算差距的第二個日期。

案例:
假設有一個銷售表sales,包含以下欄位:
- sale_id:銷售ID
- sale_date:銷售日期

要求使用DATEDIFF函數,計算銷售發生到現在的天數,並查詢銷售發生不超過7天的記錄。

SQL語句:

SELECT sale_id, sale_date
FROM sales
WHERE DATEDIFF(NOW(), sale_date) <= 7;

解釋SQL語句:
1. SELECT語句:指定要查詢的欄位。
2. FROM sales:指定要查詢的數據表為sales。
3. WHERE DATEDIFF(NOW(), sale_date) <= 7:使用DATEDIFF函數計算當前日期(NOW())與sale_date欄位的差距,並判斷差距是否不超過7天。

假設銷售數據為:
- 銷售A, 日期:2022-02-10
- 銷售B, 日期:2022-02-15
- 銷售C, 日期:2022-02-20

如果當前日期為2022-02-17,經過查詢後,將返回以下結果:
- 銷售B, 日期:2022-02-15
- 銷售C, 日期:2022-02-20

最終的查詢結果將顯示銷售ID和銷售日期,其中銷售日期與當前日期的差距不超過7天。

在黑夜裡夢想著光,心中覆蓋悲傷,在悲傷里忍受孤獨,空守一絲溫暖。 我的淚水是無底深海,對你的愛已無言,相信無盡的力量,那是真愛永在。 我的信仰是無底深海,澎湃著心中火焰,燃燒無盡的力量,那是忠誠永在。
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 解耦 含義 系統各個模塊或組件之間的耦合度降低,使得它們能夠獨立地進行開發、測試、部署和維護。通過解耦,可以提高系統的可維護性、可擴展性和可重用性。 使用場景 將前端和後端分離,通過API介面就行通信,使得前端和後端可以獨立開發、測試和部署。 使用消息隊列解耦生產者和消費者,生產者將消息發送到消息隊 ...
  • JWT簡介 是一種身份認證的開放標準(RFC 7519),可以在網路應用間傳輸信息作為Json對象。由三部分組成:頭部(Header)、載荷(payload)和簽名(Signature). 頭部(Header) 兩部分組成,令牌類型和所使用的的簽名演算法 { "alg":"HS256", "typ": ...
  • 基本概念 是一種用於非同步編程的概念。Task的重要特點是可以在後臺執行方法或操作,而不會阻塞主線程或UI線程。 封裝的非同步操作,表示執行的操作正在進行。可以表示一個方法的返回值或者表示執行的操作已經完成。 Task類的主要成員 屬性:TaskStatus、IsCanceled、IsCompleted ...
  • ## 引言 最近做一個配置的功能,需求是該配置項跟另一個整形配置項關聯,具有一定的函數關係,例如有一個配置項是值為 `N` ,則另一配置 `F` 項滿足函數關係$F=2/(N+1)$。這個函數關係是客戶手動輸入,只需要簡單的四則運算,所以我們要做的就是判斷四則運算表達式是否有效,且給定 `N` 的值 ...
  • 之前在Windows上用過一款圓盤菜單工具Quicker, 感覺非常方便, 換成Macos後,一直沒有找到類似應用。 最近終於發現,一款好用的快捷鍵收集,觸發工具Radial Menu. 其核心功能是可以根據當前程式的上下文,彈出一個圓盤菜單。 執行圓盤中的動作。 目前菜單動作還僅支持快捷鍵,預計後 ...
  • 今天檢查前同事留下的一個shell腳本時,其中一個腳本中有一個業務邏輯處理:要判斷Oracle資料庫實例是否啟動,如果資料庫實例處於OPEN狀態的話,則執行/運行一些業務邏輯操作。腳本大體如下(腳本做了一下混淆和精簡收縮) up_flag=`${SCRIPT_DIR}/chkdbup.sh ${OR ...
  • 本文介紹在**Windows 10**操作系統中,進行**用戶變數**、**系統變數**等兩種**環境變數**的新建、修改與刪除的詳細方法。 在很多時候,我們需要對**Windows**電腦的**環境變數**加以修改,例如安裝一些專業軟體、配置一些代碼環境等等;這裡就具體介紹一下這一操作的方法。 首 ...
  • # 一、Python學習兩大道具 ## 1. dir()工具 - 作用:支持打開package,看到裡面的工具函數 - 示例: (1) 輸出torch庫包含的函數 ```python dir(torch) ``` (2) 輸出torch.AVG函數中的參數 ```python dir(torch.A ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...