當前位置:首頁 » 編程語言 » sql有哪些函數

sql有哪些函數

發布時間: 2025-06-04 20:05:19

① SQL常用經典函數大全

SQL常用經典函數主要包括以下幾類

一、字元串處理函數 SUBSTR:截取字元串的子串。 CONCAT:合並字元串。 UPPER:將字元串轉換為大寫。 LOWER:將字元串轉換為小寫。 LENGTH:測量字元串的長度。 TRIM:刪除字元串兩端的空格。 REPLACE:替換字元串中的特定字元。

二、數值處理函數 ROUND:對數值進行四捨五入。 ABS:獲取數值的絕對值。 TRUNCATE:精確到指定的小數位。

三、日期和時間處理函數 DATE_FORMAT:格式化日期。 NOW:獲取當前的日期和時間。 DATE_ADD:在日期上加上指定的時間間隔。 DATE_SUB:在日期上減去指定的時間間隔。 DATEDIFF:計算兩個日期之間的天數差。 EXTRACT:提取日期中的特定部分。 STR_TO_DATE:將字元串轉換為日期。 CONVERT:用於日期或其他數據類型的轉換。

四、統計和聚合函數 COUNT:統計非空值的數量。 SUM:計算數值的總和。 AVG:計算數值的平均值。 MAX:找出數值中的最大值。 MIN:找出數值中的最小值。 GROUP_CONCAT:將分組後的值連接成一個字元串。

五、條件判斷函數 COALESCE:返回第一個非NULL的值。 NULLIF:如果兩個值相等,則返回NULL,否則返回第一個值。 CASE WHEN:實現復雜的條件判斷邏輯。 IFNULL:如果值為NULL,則返回指定的值。

六、其他函數 RAND:生成隨機數。 INET_ATON:將IPv4地址轉換為數字表示。 INET_NTOA:將數字表示的IPv4地址轉換回點分十進製表示。

這些函數在SQL查詢中發揮著重要作用,能夠幫助你高效地處理和操作資料庫中的數據。熟練掌握這些函數將極大提升你的SQL編程能力。

② SQL中累計求和與滑動求和函數sum() over()用法

在SQL中,sum()函數的擴展功能——窗口函數sum() over()提供了三種主要用法:分組求和、累計求和和滑動求和。讓我們通過實例來理解這些場景的實現方式。

首先,以數據表dws_js_team_gmv為例,包含團隊名、月份和成交額欄位。我們來看三種求和需求的SQL代碼:

1. 要求是計算每個銷售團隊的年累計成交額及其對累計值的貢獻佔比,這可以通過分組求和並保留當前行數實現,SQL代碼如下:

SQL邏輯:

SQL跑數結果:

2. 對於逐月累計業績,從1月開始,同樣需要分組求和並保留當前行,代碼如下:

SQL邏輯:

SQL跑數結果:

3. 接下來是近3個月的累計業績(包括統計月)。這里涉及到滑動求和,用window函數over()設置滑動范圍,例如范圍從當前行前2行到當前行,代碼示例:

SQL邏輯:

對於不包含統計月的近3個月累計業績,有三種處理方法:

① 通過減去統計月的值,計算近4個月的滑動求和:range between 2 preceding and 0 following 或 2 preceding and current row

② 調整滑動區間為3個前一月到前兩個前一月:range between 3 preceding and 1 preceding

③ 或者調整為3個前一月到後一個前一月:range between 3 preceding and -1 following

這些SQL代碼展示了sum() over()函數在不同場景下的應用,幫助我們靈活處理累計和滑動求和需求。

熱點內容
我的世界中國版輔助伺服器 發布:2025-06-06 13:19:30 瀏覽:149
伺服器藍燈代表什麼 發布:2025-06-06 13:08:44 瀏覽:258
安卓觸屏軟體哪個好用 發布:2025-06-06 13:00:34 瀏覽:891
安卓是哪個廠家的 發布:2025-06-06 12:59:30 瀏覽:560
java文件上傳原理 發布:2025-06-06 12:54:18 瀏覽:681
存儲領域書籍 發布:2025-06-06 12:52:23 瀏覽:527
pythonencode中文 發布:2025-06-06 11:58:11 瀏覽:549
note3怎麼刪除文件夾 發布:2025-06-06 11:46:13 瀏覽:78
掛機進圖腳本 發布:2025-06-06 11:41:49 瀏覽:655
loadrunnerlinux 發布:2025-06-06 11:41:00 瀏覽:107