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
Analytics Platform Sistemi (PDW)
Microsoft Fabric'te SQL Veritabanı
Günün saatiyle birleştirilmiş bir tarih tanımlar. Süre, saniyeler her zaman sıfır (:00) ve kesirli saniyeler olmadan 24 saatlik bir günü temel alır.
Note
Smalldatetime açıklaması
| Property | Value |
|---|---|
| Syntax | smalldatetime |
| Usage | DECLARE @MySmallDateTime SMALLDATETIME;CREATE TABLE Table1 (Column1 SMALLDATETIME); |
|
Varsayılan dize değişmez değerleri biçimleri (alt düzey istemci için kullanılır) |
Uygulanamaz |
| Tarih aralığı |
1900-01-01 aracılığıyla 2079-06-061 Ocak 1900 ile 6 Haziran 2079 arasında |
| Zaman aralığı |
00:00:00 aracılığıyla 23:59:592024-05-09 23:59:59
2024-05-10 00:00:00 yuvarlar |
| Öğe aralıkları |
yyyy, bir yılı temsil eden 1900 ile 2079 arasında değişen dört basamaktır.MM, belirtilen yıldaki bir ayı temsil eden 01 ile 12 arasında iki basamaktır.dd, belirtilen ayın gününü temsil eden aya bağlı olarak 01 ile 31 arasında değişen iki basamaktır.HH, saati temsil eden 00 ile 23 arasında iki basamaktır.mm, dakikayı temsil eden 00 ile 59 arasında iki basamaktır.ss, ikinciyi temsil eden 00 ile 59 arasında iki basamaktır. 29,998 saniye veya daha az olan değerler en yakın dakikaya yuvarlanır. 29,999 saniye veya daha fazla değer en yakın dakikaya yuvarlanir. |
| Karakter uzunluğu | En fazla 19 konum |
| Depolama boyutu | 4 bayt, sabit |
| Accuracy | Bir dakika |
| Varsayılan değer | 1900-01-01 00:00:00 |
| Calendar | Gregorian (Yılların tamamını içermez.) |
| kullanıcı tanımlı kesirli ikinci duyarlık |
No |
| Saat dilimi fark ve koruma | No |
| Gün ışığından yararlanmaya duyarlı | No |
ANSI ve ISO 8601 uyumluluğu
smalldatetime ANSI veya ISO 8601 uyumlu değildir.
Tarih ve saat verilerini dönüştürme
Tarih ve saat veri türlerine dönüştürdüğünüzde SQL Server, tarih veya saat olarak tanıyamayan tüm değerleri reddeder.
CAST ve CONVERT işlevlerini tarih ve saat verileriyle kullanma hakkında bilgi için bkz. CAST ve CONVERT.
Smalldatetime'ı diğer tarih ve saat türlerine dönüştürme
Bu bölümde, bir smalldatetime veri türü diğer tarih ve saat veri türlerine dönüştürüldüğünde ne olduğu açıklanmaktadır.
DECLARE @smalldatetime AS SMALLDATETIME = '1955-12-13 12:43:10';
DECLARE @date AS DATE = @smalldatetime;
SELECT @smalldatetime AS '@smalldatetime',
@date AS 'date';
Sonuç kümesi aşağıdadır.
@smalldatetime date
--------------------- ----------
1955-12-13 12:43:00 1955-12-13
Dönüştürme0olarak ayarlanır. Aşağıdaki kod, smalldatetime değerini saat(4) değerine dönüştürmenin sonuçlarını gösterir.
DECLARE @smalldatetime AS SMALLDATETIME = '1955-12-13 12:43:10';
DECLARE @time AS TIME (4) = @smalldatetime;
SELECT @smalldatetime AS '@smalldatetime',
@time AS 'time';
Sonuç kümesi aşağıdadır.
@smalldatetime time
----------------------- -------------
1955-12-13 12:43:00 12:43:00.0000
Dönüştürme datetimeolduğunda, smalldatetime değeri datetime değerine kopyalanır. Kesirli saniyeler 0olarak ayarlanır. Aşağıdaki kod, smalldatetime değerini datetime değerine dönüştürmenin sonuçlarını gösterir.
DECLARE @smalldatetime AS SMALLDATETIME = '1955-12-13 12:43:10';
DECLARE @datetime AS DATETIME = @smalldatetime;
SELECT @smalldatetime AS '@smalldatetime',
@datetime AS 'datetime';
Sonuç kümesi aşağıdadır.
@smalldatetime datetime
----------------------- -----------------------
1955-12-13 12:43:00 1955-12-13 12:43:00.000
0ve saat dilimi uzaklığı +00:0olarak ayarlanır. Aşağıdaki kod, smalldatetime değerini datetimeoffset(4) değerine dönüştürmenin sonuçlarını gösterir.
DECLARE @smalldatetime AS SMALLDATETIME = '1955-12-13 12:43:10';
DECLARE @datetimeoffset AS DATETIMEOFFSET (4) = @smalldatetime;
SELECT @smalldatetime AS '@smalldatetime',
@datetimeoffset AS 'datetimeoffset(4)';
Sonuç kümesi aşağıdadır.
@smalldatetime datetimeoffset(4)
--------------------- ------------------------------
1955-12-13 12:43:00 1955-12-13 12:43:00.0000 +00:0
datetime2(n)dönüştürme için, smalldatetime değeri datetime2(n) değerine kopyalanır. Kesirli saniyeler 0olarak ayarlanır. Aşağıdaki kod, smalldatetime değerini datetime2(4) değerine dönüştürmenin sonuçlarını gösterir.
DECLARE @smalldatetime AS SMALLDATETIME = '1955-12-13 12:43:10';
DECLARE @datetime2 AS DATETIME2 (4) = @smalldatetime;
SELECT @smalldatetime AS '@smalldatetime',
@datetime2 AS ' datetime2(4)';
Sonuç kümesi aşağıdadır.
@smalldatetime datetime2(4)
--------------------- ------------------------
1955-12-13 12:43:00 1955-12-13 12:43:00.0000
Examples
A. Saniyelerle dize değişmez değerlerini smalldatetime değerine dönüştürme
Aşağıdaki örnek, dize değişmez değerlerindeki saniyelerin smalldatetime
SELECT CAST ('2024-05-08 12:35:29' AS SMALLDATETIME),
CAST ('2024-05-08 12:35:30' AS SMALLDATETIME),
CAST ('2024-05-08 12:59:59.998' AS SMALLDATETIME);
| Input | Output |
|---|---|
2024-05-08 12:35:29 |
2024-05-08 12:35:00 |
2024-05-08 12:35:30 |
2024-05-08 12:36:00 |
2024-05-08 12:59:59.998 |
2024-05-08 13:00:00 |
B. Tarih ve saat veri türlerini karşılaştırma
Aşağıdaki örnek, bir dizeyi her tarih ve saat veri türüne dönüştürmenin sonuçlarını karşılaştırır.
SELECT CAST ('2024-05-08 12:35:29.1234567 +12:15' AS TIME (7)) AS 'time',
CAST ('2024-05-08 12:35:29.1234567 +12:15' AS DATE) AS 'date',
CAST ('2024-05-08 12:35:29.123' AS SMALLDATETIME) AS 'smalldatetime',
CAST ('2024-05-08 12:35:29.123' AS DATETIME) AS 'datetime',
CAST ('2024-05-08 12:35:29.1234567 +12:15' AS DATETIME2 (7)) AS 'datetime2',
CAST ('2024-05-08 12:35:29.1234567 +12:15' AS DATETIMEOFFSET (7)) AS 'datetimeoffset';
| Veri türü | Output |
|---|---|
| time | 12:35:29.1234567 |
| date | 2024-05-08 |
| smalldatetime | 2024-05-08 12:35:00 |
| datetime | 2024-05-08 12:35:29.123 |
| datetime2 | 2024-05-08 12:35:29.1234567 |
| datetimeoffset | 2024-05-08 12:35:29.1234567 +12:15 |