當前位置:首頁 » 編程語言 » sql中logs函數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql中logs函數

發布時間: 2023-05-29 04:03:50

sql中統計字元串長度的函數是什麼

SQL中統計字元串長度的函數是:函數len(string)。

比如:

select len('abc')輸出3

select len('abcde')輸出5

字元串函數對二進制數據、字元串和表達式執行不同的運算。此類函數作用於CHAR、VARCHAR、 BINARY、 和VARBINARY 數據類型以及可以隱式轉換為CHAR 或VARCHAR的數據類型。可以在SELECT 語句的SELECT 和WHERE 子句以及表達式中使用字元串函數。
常用的字元串函數有:

  1. ASCII():返回字元表達式最左端字元的ASCII 碼值。在ASCII()函數中,純數字的字元串可不用『』括起來,但含其它字元的字元串必須用『』括起來使用,否則會出錯。

  2. CHAR():將ASCII 碼轉換為字元。如果沒有輸入0 ~ 255 之間的ASCII 碼值,CHAR() 返回NULL 。

  3. LOWER()和UPPER():LOWER()將字元串全部轉為小寫;UPPER()將字元串全部轉為大寫。

  4. STR():把數值型數據轉換為字元型數據。

    STR (<float_expression>[,length[, <decimal>]])

    length 指定返回的字元串的長度,decimal 指定返回的小數位數。如果沒有指定長度,預設的length 值為10, decimal 預設值為0。

    當length 或者decimal 為負值時,返回NULL;

    當length 小於小數點左邊(包括符號位)的位數時,返回length 個*;

    先服從length ,再取decimal ;

    當返回的字元串位數小於length ,左邊補足空格。

  5. LTRIM() 把字元串頭部的空格去掉。

  6. RTRIM() 把字元串尾部的空格去掉。

  7. left():LEFT (<character_expression>, <integer_expression>)返回character_expression 左起 integer_expression 個字元。

  8. RIGHT():RIGHT (<character_expression>, <integer_expression>)返回character_expression 右起 integer_expression 個字元。

  9. SUBSTRING():SUBSTRING (<expression>, <starting_ position>, length)返回從字元串左邊第starting_ position 個字元起length個字元的部分。

  10. CHARINDEX():返回字元串中某個指定的子串出現的開始位置。CHARINDEX (<』substring_expression』>, <expression>)

    其中substring _expression 是所要查找的字元表達式,expression 可為字元串也可為列名表達式。如果沒有發現子串,則返回0 值。

    此函數不能用於TEXT 和IMAGE 數據類型。

  11. PATINDEX():返回字元串中某個指定的子串出現的開始位置。PATINDEX (<』%substring _expression%』>, <column_ name>)其中子串表達式前後必須有百分號「%」否則返回值為0。與CHARINDEX 函數不同的是,PATINDEX函數的子串中可以使用通配符,且此函數可用於CHAR、 VARCHAR 和TEXT 數據類型。

  12. QUOTENAME():返回被特定字元括起來的字元串。QUOTENAME (<』character_expression』>[, quote_ character]) 其中quote_ character 標明括字元串所用的字元,預設值為「[]」。

  13. REPLICATE():返回一個重復character_expression 指定次數的字元串。REPLICATE (character_expression integer_expression) 如果integer_expression 值為負值,則返回NULL 。

  14. REVERSE():將指定的字元串的字元排列順序顛倒。REVERSE (<character_expression>) 其中character_expression 可以是字元串、常數或一個列的值。

  15. REPLACE():返回被替換了指定子串的字元串。REPLACE (<string_expression1>, <string_expression2>, <string_expression3>) 用string_expression3 替換在string_expression1 中的子串string_expression2。

  16. SPACE():返回一個有指定長度的空白字元串。SPACE (<integer_expression>) 如果integer_expression 值為負值,則返回NULL 。

  17. STUFF():用另一子串替換字元串指定位置、長度的子串。

  18. STUFF (<character_expression1>, <start_ position>, <length>,<character_expression2>):如果起始位置為負或長度值為負,或者起始位置大於character_expression1 的長度,則返回NULL 值。如果length 長度大於character_expression1 中 start_ position 以右的長度,則character_expression1 只保留首字元。

拓展資料:

SQL語言,是結構化查詢語言(Structured Query Language)的簡稱。SQL語言是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統;同時也是資料庫腳本文件的擴展名。

是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同資料庫系統可以使用相同的結構化查詢語言作為數據輸入與管理的介面。SQL語言語句可以嵌套,這使他具有極大的靈活性和強大的功能。

Ⅱ SQL:連續天數的計算方法

連續出現3次的值
有時候SQL版本不夠高
方法:用 DISTINCT 和 WHERE 語句
演算法

連續出現的意味著相同數字的 Id 是連著的,由於這題問的是至少連續出現 3 次,我們使用 Logs 並檢查是否有 3 個連續的相同數字。

Id Num Id Num Id Num
1 1 2 1 3 1
注意:前兩列來自 l1 ,接下來兩列來自 l2 ,最後兩列來自 l3 。

然後我們從上表中選擇任意的 Num 獲得想要的答案。同時我們需要添加關鍵字 DISTINCT ,因為如果一個數字連續出現超過 3 次,會返回重復元素。

MySQL

Ⅲ sql count統計:我想統計1個月每個機構登錄次數。

這個簡單,只需要將你最終的SQL改一下形式明升就可以了,
select x.Name,COUNT(1) cnt from (
SELECT a.Name FROM Logs l,Users s,Account a
WHERE l.UserID=s.UserID and s.AccountID = a.AccountID and
convert(varchar(7),l.Created,120) = '2016-07' and a.ParentID=32
GROUP BY day(l.Created),a.Name
) x group by x.Name

你試一下轎氏這樣得激帆老到的是不是你想要的結果。

Ⅳ 請問oracle資料庫的算log函數的sql語句怎麼寫

格式:log(base,number) 即 log(底明或遲,數值激李)
返回以團啟base為底,輸入值number的對數。
例: log(10,100) 返回 2

Ⅳ 弱問題,在sql中向上取整的函數是什麼

【四捨五入取整截取】:select round(54.56,0)
【向下取整截取】:SELECT FLOOR(54.56)
【向上取整截取】:SELECT CEILING(13.15)

Ⅵ 急求SQL資料庫中能用到的關鍵字及其用處最好能舉例說明一下!

我在別人的blog上摘錄的,你可以上去看看,能學到很多知識了
http://www.badguy.name/article.asp?id=702
上一篇 下一篇連接,能看到很多sql文章。
希望對你有幫助。

1.數據定義語言(DDL)
數據定義語言是指用來定義和管理資料庫以及資料庫中的各種對象的語句,這些語句包括Create、Alter和Drop等語句。在SQL Server 2000中,資料庫對象包括表、視圖、觸發器、存儲過程、規則、預設、用戶自定義的數據類型等。這些對象的創建、修改和刪除等都可以通過使用Create、Alter、Drop等語句來完成。

2.數據操縱語言(DML)
數據操縱語言是指用來查詢、添加、修改和刪除資料庫中數據的語句,這些語句包括Select、Insert、Update、Delete等。在默認情況下,只有sysadmin、dbcreator、db_owner或db_datawriter等角色的成員才有權利執行數據操縱語言。

3.數據控制語言(DCL)
數據控制語言(DCL)是用來設置或者更改資料庫用戶或角色許可權的語句,這些語句包括GRANT、DENY、REVOKE等語句,在默認狀態下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成員才有權利執行數據控制語言。

GRANT語句是授權語句,它可以把語句許可權或者對象許可權授予給其他用戶和角色。
DENY語句用於拒絕給當前資料庫內的用戶或者角色授予許可權,並防止用戶或角色通過其組或角色成員繼承許可權。
REVOKE語句是與GRANT語句相反的語句,它能夠將以前在當前資料庫內的用戶或者角色上授予或拒絕的許可權刪除,但是該語句並不影響用戶或者角色從其他角色中作為成員繼承過來的許可權。

----------------------------------------------

4. 系統存儲過程

系統存儲過程是SQL Server系統創建的存儲過程,它的目的在於能夠方便地從系統表中查詢信息,或者完成與更新資料庫表相關的管理任務或其它的系統管理任務。系統存儲過程可以在任意一個資料庫中執行。系統存儲過程創建並存放於系統資料庫master中,並且名稱以sp_或者xp_開頭。
sp_addtype:用於定義一個用戶定義數據類型。
sp_configure:用於管理伺服器配置選項設置。
xp_sendmail:用於發送電子郵件或尋呼信息。
sp_stored_proceres:用於返回當前資料庫中的存儲過程的清單。
sp_help:用於顯示參數清單和其數據類型。
sp_depends:用於顯示存儲過程依據的對象或者依據存儲過程的對象。
sp_helptext:用於顯示存儲過程的定義文本。
sp_rename:用於修改當前資料庫中用戶對象的名稱
3.數據控制語言(DCL)
數據控制語言(DCL)是用來設置或者更改資料庫用戶或角色許可權的語句,這些語句包括GRANT、DENY、REVOKE等語句,在默認狀態下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成員才有權利執行數據控制語言。

GRANT語句是授權語句,它可以把語句許可權或者對象許可權授予給其他用戶和角色。
DENY語句用於拒絕給當前資料庫內的用戶或者角色授予許可權,並防止用戶或角色通過其組或角色成員繼承許可權。
REVOKE語句是與GRANT語句相反的語句,它能夠將以前在當前資料庫內的用戶或者角色上授予或拒絕的許可權刪除,但是該語句並不影響用戶或者角色從其他角色中作為成員繼承過來的許可權。

----------------------------------------------

4. 系統存儲過程

系統存儲過程是SQL Server系統創建的存儲過程,它的目的在於能夠方便地從系統表中查詢信息,或者完成與更新資料庫表相關的管理任務或其它的系統管理任務。系統存儲過程可以在任意一個資料庫中執行。系統存儲過程創建並存放於系統資料庫master中,並且名稱以sp_或者xp_開頭。
sp_addtype:用於定義一個用戶定義數據類型。
sp_configure:用於管理伺服器配置選項設置。
xp_sendmail:用於發送電子郵件或尋呼信息。
sp_stored_proceres:用於返回當前資料庫中的存儲過程的清單。
sp_help:用於顯示參數清單和其數據類型。
sp_depends:用於顯示存儲過程依據的對象或者依據存儲過程的對象。
sp_helptext:用於顯示存儲過程的定義文本。
sp_rename:用於修改當前資料庫中用戶對象的名稱。
程序代碼

1. EXEC sp_renamedb 'userdb1', 'userdb2'
更改資料庫的名稱,由userdb1更改為userdb2

2.EXEC sp_rename 'user_log','用戶登錄表'
更改當前資料庫表的名稱,由user_log,改為'用戶登錄表'
EXEC sp_rename 'user_info.user_name', '用戶名','column'
將user_info表的'user_name'列重命名為'用戶名'

3.EXEC sp_detach_db 'pubs', 'true'
sp_detach_db
從伺服器分離資料庫,並可以選擇在分離前在所有的表上運行 Update STATISTICS。

4. 將資料庫附加到伺服器
EXEC sp_attach_db @dbname = N'pubs',
@filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf',
@filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'

5. 將只有一個數據文件的資料庫附加到當前伺服器
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'

----------------------------------------------

SQL中的注釋
在SQL Server中,可以使用兩種類型的注釋字元:一種是ANSI標準的注釋符「--」,它用於單行注釋;另一種是與C語言相同的程序注釋符號,即「/* */」。

SQL中的變數

Transact-SQL語言中有兩種形式的變數,一種是用戶自己定義的局部變數,另外一種是系統提供的全局變數。

3.數據控制語言(DCL)
數據控制語言(DCL)是用來設置或者更改資料庫用戶或角色許可權的語句,這些語句包括GRANT、DENY、REVOKE等語句,在默認狀態下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成員才有權利執行數據控制語言。

GRANT語句是授權語句,它可以把語句許可權或者對象許可權授予給其他用戶和角色。
DENY語句用於拒絕給當前資料庫內的用戶或者角色授予許可權,並防止用戶或角色通過其組或角色成員繼承許可權。
REVOKE語句是與GRANT語句相反的語句,它能夠將以前在當前資料庫內的用戶或者角色上授予或拒絕的許可權刪除,但是該語句並不影響用戶或者角色從其他角色中作為成員繼承過來的許可權。

----------------------------------------------

4. 系統存儲過程

系統存儲過程是SQL Server系統創建的存儲過程,它的目的在於能夠方便地從系統表中查詢信息,或者完成與更新資料庫表相關的管理任務或其它的系統管理任務。系統存儲過程可以在任意一個資料庫中執行。系統存儲過程創建並存放於系統資料庫master中,並且名稱以sp_或者xp_開頭。
sp_addtype:用於定義一個用戶定義數據類型。
sp_configure:用於管理伺服器配置選項設置。
xp_sendmail:用於發送電子郵件或尋呼信息。
sp_stored_proceres:用於返回當前資料庫中的存儲過程的清單。
sp_help:用於顯示參數清單和其數據類型。
sp_depends:用於顯示存儲過程依據的對象或者依據存儲過程的對象。
sp_helptext:用於顯示存儲過程的定義文本。
sp_rename:用於修改當前資料庫中用戶對象的名稱。
程序代碼

1. EXEC sp_renamedb 'userdb1', 'userdb2'
更改資料庫的名稱,由userdb1更改為userdb2

2.EXEC sp_rename 'user_log','用戶登錄表'
更改當前資料庫表的名稱,由user_log,改為'用戶登錄表'
EXEC sp_rename 'user_info.user_name', '用戶名','column'
將user_info表的'user_name'列重命名為'用戶名'

3.EXEC sp_detach_db 'pubs', 'true'
sp_detach_db
從伺服器分離資料庫,並可以選擇在分離前在所有的表上運行 Update STATISTICS。

4. 將資料庫附加到伺服器
EXEC sp_attach_db @dbname = N'pubs',
@filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf',
@filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'

5. 將只有一個數據文件的資料庫附加到當前伺服器
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'

----------------------------------------------

SQL中的注釋
在SQL Server中,可以使用兩種類型的注釋字元:一種是ANSI標準的注釋符「--」,它用於單行注釋;另一種是與C語言相同的程序注釋符號,即「/* */」。

SQL中的變數

Transact-SQL語言中有兩種形式的變數,一種是用戶自己定義的局部變數,另外一種是系統提供的全局變數。

局部變數:局部變數是一個能夠擁有特定數據類型的對象,它的作用范圍僅限制在程序內部。局部變數可以作為計數器來計算循環執行的次數,或是控制循環執行的次數。另外,利用局部變數還可以保存數據值,以供控制流語句測試以及保存由存儲過程返回的數據值等。局部變數被引用時要在其名稱前加上標志「@」,而且必須先用DECLARE命令定義後才可以使用。
全局變數:全局變數是SQL Server系統內部使用的變數,其作用范圍並不僅僅局限於某一程序,而是任何程序均可以隨時調用。全局變數通常存儲一些SQL Server的配置設定值和統計數據。用戶可以在程序中用全局變數來測試系統的設定值或者是Transact-SQL命令執行後的狀態值。

使用全局變數時應該注意以下幾點:
①全局變數不是由用戶的程序定義的,它們是在伺服器級定義的。
②用戶只能使用預先定義的全局變數。
③引用全局變數時,必須以標記符「@@」開頭。
④局部變數的名稱不能與全局變數的名稱相同,否則會在應用程序中出現不可預測的結果。

----------------------------------------------

SQL中的函數

在Transact-SQL語言中,函數被用來執行一些特殊的運算以支持SQL Server的標准命令。Transact-SQL 編程語言提供了三種函數:
一行集函數:行集函數可以在Transact-SQL語句中當作表引用。
二聚合函數:聚合函數用於對一組值執行計算並返回一個單一的值。
三標量函數:標量函數用於對傳遞給它的一個或者多個參數值進行處理和計算,並返回一個單一的值。

1.字元串函數
字元串函數包括:
基本字元串函數:UPPER、LOWER、SPACE、REPLICATE、STUFF、REVERSE、LTRIM、RTRIM。
字元串查找函數:CHARINDEX、PATINDEX。
長度和分析函數:DATALENGTH、SUBSTRING、RIGHT。
轉換函數:ASCH、CHAR、STR、SOUNDEX、DIFFERENCE。

基本字元串函數
UPPER:將小寫字元數據轉換為大寫的字元
LOWER:將大寫字元數據轉換為小寫的字元
SPACE:返回由重復的空格組成的字元串。如:space(2)則返回兩個空格
REPLICATE:以指定的次數重復字元表達式。
語法:REPLICATE ( character_e­xpression , integer_e­xpression )
如:Select REPLICATE(au_fname, 2) FROM authors,則重復兩遍每個作者的名字
STUFF:刪除指定長度的字元並在指定的起始點插入另一組字元。
語法:STUFF ( character_e­xpression , start , length , character_e­xpression )
(start是一個整形值,指定刪除和插入的開始位置。如果 start 或 length 是負數,則返回空字元串。如果 start 比第一個 character_e­xpression 長,則返回空字元串。
length是一個整數,指定要刪除的字元數。如果 length 比第一個 character_e­xpression 長,則最多刪除到最後一個 character_e­xpression 中的最後一個字元。)

3.數據控制語言(DCL)
數據控制語言(DCL)是用來設置或者更改資料庫用戶或角色許可權的語句,這些語句包括GRANT、DENY、REVOKE等語句,在默認狀態下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成員才有權利執行數據控制語言。

GRANT語句是授權語句,它可以把語句許可權或者對象許可權授予給其他用戶和角色。
DENY語句用於拒絕給當前資料庫內的用戶或者角色授予許可權,並防止用戶或角色通過其組或角色成員繼承許可權。
REVOKE語句是與GRANT語句相反的語句,它能夠將以前在當前資料庫內的用戶或者角色上授予或拒絕的許可權刪除,但是該語句並不影響用戶或者角色從其他角色中作為成員繼承過來的許可權。

----------------------------------------------

4. 系統存儲過程

系統存儲過程是SQL Server系統創建的存儲過程,它的目的在於能夠方便地從系統表中查詢信息,或者完成與更新資料庫表相關的管理任務或其它的系統管理任務。系統存儲過程可以在任意一個資料庫中執行。系統存儲過程創建並存放於系統資料庫master中,並且名稱以sp_或者xp_開頭。
sp_addtype:用於定義一個用戶定義數據類型。
sp_configure:用於管理伺服器配置選項設置。
xp_sendmail:用於發送電子郵件或尋呼信息。
sp_stored_proceres:用於返回當前資料庫中的存儲過程的清單。
sp_help:用於顯示參數清單和其數據類型。
sp_depends:用於顯示存儲過程依據的對象或者依據存儲過程的對象。
sp_helptext:用於顯示存儲過程的定義文本。
sp_rename:用於修改當前資料庫中用戶對象的名稱。
程序代碼

1. EXEC sp_renamedb 'userdb1', 'userdb2'
更改資料庫的名稱,由userdb1更改為userdb2

2.EXEC sp_rename 'user_log','用戶登錄表'
更改當前資料庫表的名稱,由user_log,改為'用戶登錄表'
EXEC sp_rename 'user_info.user_name', '用戶名','column'
將user_info表的'user_name'列重命名為'用戶名'

3.EXEC sp_detach_db 'pubs', 'true'
sp_detach_db
從伺服器分離資料庫,並可以選擇在分離前在所有的表上運行 Update STATISTICS。

4. 將資料庫附加到伺服器
EXEC sp_attach_db @dbname = N'pubs',
@filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf',
@filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'

5. 將只有一個數據文件的資料庫附加到當前伺服器
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'

----------------------------------------------

SQL中的注釋
在SQL Server中,可以使用兩種類型的注釋字元:一種是ANSI標準的注釋符「--」,它用於單行注釋;另一種是與C語言相同的程序注釋符號,即「/* */」。

SQL中的變數

Transact-SQL語言中有兩種形式的變數,一種是用戶自己定義的局部變數,另外一種是系統提供的全局變數。

局部變數:局部變數是一個能夠擁有特定數據類型的對象,它的作用范圍僅限制在程序內部。局部變數可以作為計數器來計算循環執行的次數,或是控制循環執行的次數。另外,利用局部變數還可以保存數據值,以供控制流語句測試以及保存由存儲過程返回的數據值等。局部變數被引用時要在其名稱前加上標志「@」,而且必須先用DECLARE命令定義後才可以使用。
全局變數:全局變數是SQL Server系統內部使用的變數,其作用范圍並不僅僅局限於某一程序,而是任何程序均可以隨時調用。全局變數通常存儲一些SQL Server的配置設定值和統計數據。用戶可以在程序中用全局變數來測試系統的設定值或者是Transact-SQL命令執行後的狀態值。

使用全局變數時應該注意以下幾點:
①全局變數不是由用戶的程序定義的,它們是在伺服器級定義的。
②用戶只能使用預先定義的全局變數。
③引用全局變數時,必須以標記符「@@」開頭。
④局部變數的名稱不能與全局變數的名稱相同,否則會在應用程序中出現不可預測的結果。

----------------------------------------------

SQL中的函數

在Transact-SQL語言中,函數被用來執行一些特殊的運算以支持SQL Server的標准命令。Transact-SQL 編程語言提供了三種函數:
一行集函數:行集函數可以在Transact-SQL語句中當作表引用。
二聚合函數:聚合函數用於對一組值執行計算並返回一個單一的值。
三標量函數:標量函數用於對傳遞給它的一個或者多個參數值進行處理和計算,並返回一個單一的值。

1.字元串函數
字元串函數包括:
基本字元串函數:UPPER、LOWER、SPACE、REPLICATE、STUFF、REVERSE、LTRIM、RTRIM。
字元串查找函數:CHARINDEX、PATINDEX。
長度和分析函數:DATALENGTH、SUBSTRING、RIGHT。
轉換函數:ASCH、CHAR、STR、SOUNDEX、DIFFERENCE。

基本字元串函數
UPPER:將小寫字元數據轉換為大寫的字元
LOWER:將大寫字元數據轉換為小寫的字元
SPACE:返回由重復的空格組成的字元串。如:space(2)則返回兩個空格
REPLICATE:以指定的次數重復字元表達式。
語法:REPLICATE ( character_e­xpression , integer_e­xpression )
如:Select REPLICATE(au_fname, 2) FROM authors,則重復兩遍每個作者的名字
STUFF:刪除指定長度的字元並在指定的起始點插入另一組字元。
語法:STUFF ( character_e­xpression , start , length , character_e­xpression )
(start是一個整形值,指定刪除和插入的開始位置。如果 start 或 length 是負數,則返回空字元串。如果 start 比第一個 character_e­xpression 長,則返回空字元串。
length是一個整數,指定要刪除的字元數。如果 length 比第一個 character_e­xpression 長,則最多刪除到最後一個 character_e­xpression 中的最後一個字元。)

REVERSE:反轉字元串Select REVERSE('abcd') 則返回『dcba』

字元串查找函數
參考:http://www.badguy.name/article.asp?id=93

長度和分析函數
DATALENGTH :返回任何錶達式所佔用的位元組數。
SUBSTRING:參考http://www.badguy.name/article.asp?id=105
LEFT:返回從字元串左邊開始指定個數的字元。
RIGHT:返回從字元串左邊開始指定個數的字元。Select RIGHT(au_fname, 5) FROM authors

2.日期和時間函數

datepart

示例:

3.數學函數
數學函數用於對數字表達式進行數學運算並返回運算結果。 常用的有:CEILING()、FLOOR()、ROUND()函數

4.轉換函數
一般情況下,SQL Server會自動處理某些數據類型的轉換。例如,如果比較 char 和 datetime 表達式、smallint 和 int 表達式、或不同長度的 char 表達式,SQL Server 可以將它們自動轉換,這種轉換被稱為隱性轉換。但是,無法由SQL Server自動轉換的或者是SQL Server自動轉換的結果不符合預期結果的,就需要使用轉換函數做顯示轉換。轉換函數有兩個:CONVERT和CAST。

CAST ( e­xpression AS data_type )
CONVERT函數允許用戶把表達式從一種數據類型轉換成另一種數據類型,還允許把日期轉換成不同的樣式。其語法形式為:
CONVERT (data_type[(length)],e­xpression [,style])
流程式控制制語句是指那些用來控製程序執行和流程分支的命令,在SQL Server 2000中,流程式控制制語句主要用來控制SQL語句、語句塊或者存儲過程的執行流程。

IF Boolean_e­xpression
{ sql_statement | statement_block }
[ ELSE
{ sql_statement | statement_block } ]

BEGIN
{ sql_statement
| statement_block }
END

http://www.badguy.name/article.asp?id=702

Ⅶ sql中常用的聚合函數有哪些(sql聚合函數)

聚合函數是對一組值執行計算並返回單一的值的函數,它經常與SELECT語句的GROUPBY子句一同使用,SQLSERVER中具體有哪些聚者正合函數呢?我們來一一看一下:

1.AVG返回指定組中的平均值,空值被忽略。

例:selectprd_no,avg(qty)fromsalesgroupbyprd_no

2.COUNT返回指定組中項目的數量。

例:selectcount(prd_no)fromsales

3.MAX返回指定數據的最大值。

例:selectprd_no,max(qty)fromsalesgroupbyprd_no

4.MIN返回指定數據的最小值。

例:selectprd_no,min(qty)fromsalesgroupbyprd_no

5.SUM返回指定數據的和,只能用於數字列,空值被忽略。

例:selectprd_no,sum(qty)fromsalesgroupbyprd_no

6.COUNT_BIG返回指定組中的項目數量,與COUNT函數不同的是COUNT_BIG返回bigint值,而COUNT返型頃回的是int值。

例:selectcount_big(prd_no)fromsales

7.GROUPING產生一個附加的列,當用CUBE或ROLLUP運算符添加行時,輸出值為1.當所添加的行不是由CUBE或ROLLUP產生時,輸出值為0.

例:selectprd_no,sum(qty),grouping(prd_no)fromsalesgroupbyprd_nowithrollup

8.BINARY_CHECKSUM返回對表中的行或表達式列表計卜嫌陸算的二進制校驗值,用於檢測表中行的更改。

例:selectprd_no,binary_checksum(qty)fromsalesgroupbyprd_no

9.CHECKSUM_AGG返回指定數據的校驗值,空值被忽略。

例:selectprd_no,checksum_agg(binary_checksum(*))fromsalesgroupbyprd_no

10.CHECKSUM返回在表的行上或在表達式列表上計算的校驗值,用於生成哈希索引。

11.STDEV返回給定表達式中所有值的統計標准偏差。

例:selectstdev(prd_no)fromsales

12.STDEVP返回給定表達式中的所有值的填充統計標准偏差。

例:selectstdevp(prd_no)fromsales

13.VAR返回給定表達式中所有值的統計方差。

例:selectvar(prd_no)fromsales

14.VARP返回給定表達式中所有值的填充的統計方差。

例:selectvarp(prd_no)fromsales

Ⅷ 什麼是SQL標量函數

標量函數:標量函數用於對傳遞給它的一個或者多個參數值進行處理和計算,並返回一個單一的值。 標量值函數示例: CREATEFUNCTIONdbo.Foo() RETURNSint AS BEGIN declare@nint select@n=3 return@n END SQL中的函數 在Transact-SQL語言中,函數被用來執行一些特殊的運算以支持SQLServer的標准命令。Transact-SQL編程語言提跡稿含供了三種函數: 一行集函數:行集函數可以在Transact-SQL語句中當作表引用。 二聚合函數:聚合函數用於對敬薯一組值執行計算並返回一個單一的值。 三標量函數:標量函數用於對傳遞給它的一個或者多個參數值進行處理和計算,並返回一個單一的值。 另外: SQLServer2000允許用戶創建自定義函數,自定義函數可以有返回值。 自定義函數分為:標量值函數或表值函數 •如果RETURNS子句指定一種標量數據類型,則函數為標量值函數。可以使用多條Transact-SQL語句定義標量值函數。 •如果RETURNS子句指定TABLE,則函姿笑數為表值函數。

Ⅸ SQL中的窗口函數總結

over()  窗口函數

語法結構:

partition by : 作用與group by 類似,實現分組功能

常與over一起使用的分析函數:

聚合函數:

avg(),sum(),max(),mean()

排名函數:

row_number() 產生不會重復的自增編號 (1,2,3,4,5,6.......)

rank()按照值排序的時候產生一個自增編號,值相等時會重復,有空位(eg:1,2,2,4,5,6,6,8...)

dense_rank()按照值排序的時候產生一個自增編號,值相等時會重復,無空位(1,2,2,2,3...)

其他函數:

lag(),lead(),ntile()

實例:

1.對所有員工的當前(to_date='9999-01-01')薪水按照salary進行按照1-N的排名,相同salary並列且按照emp_no升序排列

Ⅹ 用SQL做日誌數據的結果統計,並將結果寫入一個表,應該如何做

如果要把查詢到的數據賀廳仔保存 請自行新建一個和log表相同結構的表禪汪logs,代碼如伏漏下:


SQL語句