日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達者為師

網(wǎng)站首頁 編程語言 正文

SQL?Server系統(tǒng)函數(shù)介紹_MsSql

作者:springsnow ? 更新時間: 2022-07-25 編程語言

一、常用函數(shù):

  • APP_NAME: 返回當(dāng)前會話的應(yīng)用程序名稱(如果應(yīng)用程序進行了設(shè)置)。
SELECT APP_NAME()
  • COALESCE: 返回其參數(shù)中第一個非空表達式
SELECT COALESCE(NULL,NULL,123,NULL)
  • COL_LENGTH(table,column):返回table表中column字段的長度;
SELECT COL_LENGTH('person','gender'),COL_LENGTH('person','FirstName');
  • COL_NAME(TABLE_ID,COLUMN_ID):返回指定表中指定字段的名稱;
SELECT COL_NAME(OBJECT_ID('person'),1);---返回person表中第1個字段的名稱;
  • COLLATIONPROPERTY: 返回給定排序規(guī)則的屬性
  • CURRENT_TIMESTAMP: 返回當(dāng)前的日期和時間。此函數(shù)等價于 GETDATE()
  • CURRENT_USER: 返回當(dāng)前的用戶。

此函數(shù)等價于 USER_NAME()

SELECT CURRENT_USER
  • DATALENGTH(x): 返回字段x的數(shù)據(jù)的實際長度,即字節(jié)數(shù),NULL的長度為NULL;
SELECT DATALENGTH('id'),DATALENGTH('Gender') FROM person WHERE id=2;
  • @@ERROR: 返回最后執(zhí)行的 Transact-SQL 語句的錯誤代碼
  • fn_helpcollations: 返回 Microsoft? SQL Server? 2000 支持的所有排序規(guī)則的列表。
  • fn_servershareddrives: 返回由群集服務(wù)器使用的共享驅(qū)動器名稱
  • fn_virtualfilestats: 返回對數(shù)據(jù)庫文件(包括日志文件)的 I/O 統(tǒng)計
  • FORMATMESSAGE: 從 sysmessages 現(xiàn)有的消息構(gòu)造消息。

FORMATMESSAGE 與 RAISERROR 語句的功能相似;但 RAISERROR 立即輸出消息而 FORMATMESSAGE: 返回編輯后的信息供進一步處理

  • GETANSINULL: 返回會話的數(shù)據(jù)庫的默認(rèn)為空性。

該函數(shù)對ANSI空值NULL返回1,如果沒有定義ANSI空值NULL,則返回0;

SELECT GETANSINULL('test2'),GETANSINULL('person'); ---test2是數(shù)據(jù)庫,person是數(shù)據(jù)表;
  • HOST_ID: 返回工作站標(biāo)識號。

返回值類型為CHAR(10);

SELECT HOST_ID(); ? --使用該函數(shù)可以記錄那些想數(shù)據(jù)表中插入數(shù)據(jù)的計算機終端的ID;
  • HOST_NAME: 返回工作站名稱。
SELECT HOST_NAME();
  • IDENT_INCR: 返回增量值(返回形式為 numeric(@@MAXPRECISION,0)),該值是在帶有標(biāo)識列的表或視圖中創(chuàng)建標(biāo)識列時指定的
  • IDENT_SEED: 返回種子值(返回形式為 numeric(@@MAXPRECISION,0)),該值是在帶有標(biāo)識列的表或視圖中創(chuàng)建標(biāo)識列時指定的
  • IDENTITY(函數(shù)): 只用在帶有 INTO table 子句的 SELECT 語句中,以將標(biāo)識列插入到新表中。

盡管類似,但是 IDENTITY 函數(shù)不是與 CREATE TABLE 和 ALTER TABLE 一起使用的 IDENTITY 屬性。(自動采番時可以起到作用)

  • ISDATE: 確定輸入表達式是否為有效的日期
  • ISNULL: 使用指定的替換值替換 NULL
SELECT AVG(ISNULL(id,0)) FROM dbo.school AS s
  • ISNUMERIC: 確定表達式是否為一個有效的數(shù)字類型
PRINT ISNUMERIC('1223A')
  • NEWID: 創(chuàng)建 uniqueidentifier 類型的唯一值
  • NULLIF: 如果兩個指定的表達式相等,則返回空值。
SELECT NULLIF('AA','AA')
  • PARSENAME: 返回對象名的指定部分。可以檢索的對象部分有對象名、所有者名稱、數(shù)據(jù)庫名稱和服務(wù)器名稱
  • PERMISSIONS: 返回一個包含位圖的值,表明當(dāng)前用戶的語句、對象或列權(quán)限。
  • @@ROWCOUNT: 返回受上一語句影響的行數(shù)
  • ROWCOUNT_BIG: 返回受執(zhí)行的最后一個語句影響的行數(shù)。該函數(shù)的功能與 @@ROWCOUNT 一樣,除非 ROWCOUNT_BIG 的返回類型是 bigint。
  • SERVERPROPERTY: 返回有關(guān)服務(wù)器實例的屬性信息
  • SESSIONPROPERTY: 返回會話的 SET 選項設(shè)置
  • SESSION_USER: 是一個 niladic 函數(shù),允許在未指定默認(rèn)值時將系統(tǒng)為當(dāng)前會話的用戶名提供的值插入到表中。還允許在查詢、錯誤信息等中使用用戶名
  • SCHEMA_NAME: 查看Schema的ID和Name
  • STATS_DATE: 返回最后一次更新指定索引統(tǒng)計的日期
SELECT STATS_DATE(OBJECT_ID('school'),1)
  • SYSTEM_USER: 返回當(dāng)前系統(tǒng)用戶名
  • SUSER_ID():根據(jù)登錄名返回用戶的SID(安全標(biāo)識號)
SELECT SUSER_SID(),SUSER_SID('COMPU\Administrator'); --不帶參數(shù)時返回當(dāng)前用戶的ID,也可以帶參數(shù)指定用戶;
  • SUSER_SNAME():返回與安全標(biāo)識符關(guān)聯(lián)的登錄名

返回值類型為NVARCHAR(128);

SELECT SUSER_SNAME(),SUSER_SNAME(0x010500000000000515000000C1289E4023B53F66B8323512E9030000);
  • @@TRANCOUNT: 返回當(dāng)前連接的活動事務(wù)數(shù)
  • USER_ID():根據(jù)指定用戶名返回數(shù)據(jù)庫用戶的ID,

如果沒有指定用戶名,則返回當(dāng)前用戶的數(shù)據(jù)庫ID;

SELECT USER_ID();
  • USER_NAME():根據(jù)與數(shù)據(jù)庫用戶關(guān)聯(lián)的ID返回數(shù)據(jù)庫用戶名,

返回值類型為nvarchar(256);

SELECT USER_NAME(),USER_NAME(USER_ID());

二、插入后返回值的方法:

  • SCOPE_IDENTITY: 返回為當(dāng)前會話和當(dāng)前作用域中的任何表最后生成的標(biāo)識值。 SELECT SCOPE_IDENTITY();(推薦)
  • @@IDENTITY: 返回為當(dāng)前會話的所有作用域中的任何表最后生成的標(biāo)識值。 SELECT @@Identity;
  • IDENT_CURRENT: 返回為任何會話和任何作用域中的特定表最后生成的標(biāo)識值。SELECT IDENT_CURRENT('table_name');

原文鏈接:https://www.cnblogs.com/springsnow/p/11573579.html

欄目分類
最近更新