Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analiz Platformu Sistemi (PDW)
Microsoft Fabric'teki SQL analiz uç noktası
Microsoft Fabric'teki ambar
Microsoft Fabric'teki SQL veritabanı
ODBC Skaler Fonksiyonlarını Transact-SQL ifadelerinde kullanabilirsiniz. Bu ifadeler SQL Server tarafından yorumlanır. Depolanmış prosedürlerde ve kullanıcı tanımlı fonksiyonlarda kullanılabilirler. Bunlar arasında dize, sayısal, saat, tarih, aralık ve sistem fonksiyonları bulunur.
Usage
SELECT {fn <function_name> [ (<argument>,....n) ] }
Functions
Aşağıdaki tablolar, Transact-SQL'de çoğaltılmayan ODBC skaler fonksiyonlarını listeler.
Dize İşlevleri
| İşlev | Description |
|---|---|
| BIT_LENGTH( string_exp ) (ODBC 3.0) | Dizi ifadesinin uzunluğunu bit cinsinden döndürür. Verilen veri türünün iç boyutunu döndürür, string_exp diziye dönüştürmez. |
| CONCAT( string_exp1,string_exp2) (ODBC 1.0) | string_exp2 birleştirmenin sonucu olan bir karakter dizisi string_exp1'ye döner. Ortaya çıkan dizi DBMS'ye bağımlıdır. Örneğin, string_exp1 ile temsil edilen sütun NULL değeri içeriyorsa, DB2 NULL döndürürken, SQL Server NULL olmayan diziyi döndürür. |
| OCTET_LENGTH( string_exp ) (ODBC 3.0) | Dizi ifadesinin bayt cinsinden uzunluğunu döndürür. Sonuç olarak, bit sayısının 8'e bölünmesinden az olmayan en küçük tam sayı elde edilir. Verilen veri türünün iç boyutunu döndürür, string_exp diziye dönüştürmez. |
Sayısal Fonksiyon
| İşlev | Description |
|---|---|
| TRUNCATE( numeric_exp, integer_exp) (ODBC 2.0) | Döndürmeler numeric_exp ondalık noktanın sağındaki integer_exp konuma kısaltılır. Eğer integer_exp negatif ise, numeric_exp |integer_exp| olarak kısaltılır. ondalık noktanın solunda konumlar. |
Saat, Tarih ve Aralık İşlevleri
| İşlev | Description |
|---|---|
| CURRENT_DATE( ) (ODBC 3.0) | Geçerli tarihi döndürür. |
| CURDATE( ) (ODBC 3.0) | Geçerli tarihi döndürür. |
CURRENT_TIME[( time-precision )] (ODBC 3.0) |
Mevcut yerel saati döndürüyor. Zaman hassasiyeti argümanı, geri dönen değerin saniye hassasiyetini belirler |
| CURTIME() (ODBC 3.0) | Mevcut yerel saati döndürüyor. |
| DAYNAME (date_exp) (ODBC 2.0) | date_exp'nin gün kısmı için veri kaynağına özgü günün adını içeren bir karakter dizisi döndürür. Örneğin, adı Pazar'dan Cumartesi'ye veya Pazar'a kadardır. Cumartesi aracılığıyla. İngilizce kullanan bir veri kaynağı için. İsim, Almanca kullanan veri kaynağı için Samstag aracılığıyla Sonntag'dır. |
| AYIN GÜNÜ( date_exp ) (ODBC 1.0) | date_exp ay alanına göre ayın gününü tam sayı olarak döndürür. Geri dönüş değeri 1-31 aralığındadır. |
| HAFTANIN GÜNÜ (date_exp) (ODBC 1.0) | Haftanın gününü haftanın alanına göre date_exp tam sayı olarak döndürür. Getiri değeri 1-7 aralığındadır ve 1 Pazar gününü temsil eder. |
| SAAT( time_exp ) (ODBC 1.0) | time_exp'daki saat alanına göre saat değerini 0-23 aralığında tam sayı olarak döndürür. |
| DAKIKA( time_exp) (ODBC 1.0) | time_exp'deki dakika alanına dayalı olarak dakikayı 0-59 aralığında tam sayı olarak döndürür. |
| İKINCI(time_exp) (ODBC 1.0) | İkinci alanı, time_exp'daki ikinci alana göre 0-59 aralığında bir tam sayı değeri olarak döndürür. |
| MONTHNAME (date_exp) (ODBC 2.0) | date_exp ayının ayı için ayın veri kaynağına özgü adını içeren bir karakter dizisi döndürür. Örneğin, İngilizce kullanan bir veri kaynağı için isim Ocak-Aralık veya Ocak-Aralık arasıdır. İsim, Almanca kullanan bir veri kaynağı için Januar'dan Dezember'e kadardır. |
| ÇEYREK(date_exp) (ODBC 1.0) | date_exp çeyreğini 1-4 aralığında tam sayı değeri olarak döndürür; burada 1, 1 Ocak'tan 31 Mart'a kadar olan dönemi temsil eder. |
| HAFTA(date_exp) (ODBC 1.0) | date_exp haftası alanına göre yılın haftasını 1-53 aralığında tam sayı değeri olarak döndürür. |
Örnekler
A. Bir ODBC fonksiyonunun saklanan bir prosedürde kullanılması
Aşağıdaki örnek, bir ODBC fonksiyonunu bir kayıtlı prosedürde kullanır:
CREATE PROCEDURE dbo.ODBCprocedure
(
@string_exp NVARCHAR(4000)
)
AS
SELECT {fn OCTET_LENGTH( @string_exp )};
B. Kullanıcı tanımlı bir fonksiyonda ODBC Fonksiyonu Kullanımı
Aşağıdaki örnek, kullanıcı tanımlı bir fonksiyonda bir ODBC fonksiyonu kullanır:
CREATE FUNCTION dbo.ODBCudf
(
@string_exp NVARCHAR(4000)
)
RETURNS INT
AS
BEGIN
DECLARE @len INT
SET @len = (SELECT {fn OCTET_LENGTH( @string_exp )})
RETURN(@len)
END ;
GO
SELECT dbo.ODBCudf('Returns the length.');
--Returns 38
Uyarı
Microsoft Fabric, ODBC skaler fonksiyonlarını destekler, ancak şu anda Örnek B'de gösterildiği gibi değer döndüren kullanıcı tanımlı fonksiyonları desteklemez.
C. SELECT ifadelerinde bir ODBC fonksiyonu kullanımı
Aşağıdaki SELECT ifadeleri ODBC fonksiyonlarını kullanır:
DECLARE @string_exp NVARCHAR(4000) = 'Returns the length.';
SELECT {fn BIT_LENGTH( @string_exp )};
-- Returns 304
SELECT {fn OCTET_LENGTH( @string_exp )};
-- Returns 38
SELECT {fn CONCAT( 'CONCAT ','returns a character string')};
-- Returns CONCAT returns a character string
SELECT {fn TRUNCATE( 100.123456, 4)};
-- Returns 100.123400
SELECT {fn CURRENT_DATE( )};
-- Returns 2007-04-20
SELECT {fn CURRENT_TIME(6)};
-- Returns 10:27:11.973000
DECLARE @date_exp NVARCHAR(30) = '2007-04-21 01:01:01.1234567';
SELECT {fn DAYNAME( @date_exp )};
-- Returns Saturday
SELECT {fn DAYOFMONTH( @date_exp )};
-- Returns 21
SELECT {fn DAYOFWEEK( @date_exp )};
-- Returns 7
SELECT {fn HOUR( @date_exp)};
-- Returns 1
SELECT {fn MINUTE( @date_exp )};
-- Returns 1
SELECT {fn SECOND( @date_exp )};
-- Returns 1
SELECT {fn MONTHNAME( @date_exp )};
-- Returns April
SELECT {fn QUARTER( @date_exp )};
-- Returns 2
SELECT {fn WEEK( @date_exp )};
-- Returns 16
Örnekler: Azure Synapse Analytics ve Analytics Platform Sistemi (PDW)
D. Bir ODBC fonksiyonunun saklanan bir prosedürde kullanılması
Aşağıdaki örnek, bir ODBC fonksiyonunu bir kayıtlı prosedürde kullanır:
CREATE PROCEDURE dbo.ODBCprocedure
(
@string_exp NVARCHAR(4000)
)
AS
SELECT {fn BIT_LENGTH( @string_exp )};
E. Kullanıcı tanımlı bir fonksiyonda ODBC Fonksiyonu Kullanımı
Aşağıdaki örnek, kullanıcı tanımlı bir fonksiyonda bir ODBC fonksiyonu kullanır:
CREATE FUNCTION dbo.ODBCudf
(
@string_exp NVARCHAR(4000)
)
RETURNS INT
AS
BEGIN
DECLARE @len INT
SET @len = (SELECT {fn BIT_LENGTH( @string_exp )})
RETURN(@len)
END ;
GO
SELECT dbo.ODBCudf('Returns the length in bits.');
--Returns 432
F. SELECT ifadelerinde bir ODBC fonksiyonu kullanımı
Aşağıdaki SELECT ifadeleri ODBC fonksiyonlarını kullanır:
DECLARE @string_exp NVARCHAR(4000) = 'Returns the length.';
SELECT {fn BIT_LENGTH( @string_exp )};
-- Returns 304
SELECT {fn CONCAT( 'CONCAT ','returns a character string')};
-- Returns CONCAT returns a character string
SELECT {fn CURRENT_DATE( )};
-- Returns today's date
SELECT {fn CURRENT_TIME(6)};
-- Returns the time
DECLARE @date_exp NVARCHAR(30) = '2007-04-21 01:01:01.1234567';
SELECT {fn DAYNAME( @date_exp )};
-- Returns Saturday
SELECT {fn DAYOFMONTH( @date_exp )};
-- Returns 21
SELECT {fn DAYOFWEEK( @date_exp )};
-- Returns 7
SELECT {fn HOUR( @date_exp)};
-- Returns 1
SELECT {fn MINUTE( @date_exp )};
-- Returns 1
SELECT {fn SECOND( @date_exp )};
-- Returns 1
SELECT {fn MONTHNAME( @date_exp )};
-- Returns April
SELECT {fn QUARTER( @date_exp )};
-- Returns 2
SELECT {fn WEEK( @date_exp )};
-- Returns 16