Sunday, September 16, 2012

SQL CONVERT

SQL CONVERT ()

CONVERT() fungsi adalah fungsi umum yang mengubah ekspresi dari satu tipe data yang lain.
Para CONVERT () fungsi dapat digunakan untuk menampilkan tanggal / waktu data dalam format yang berbeda.

Syntax

CONVERT(data_type(length),expression,style)

ValueDescription
data_type(length)Specifies the target data type (with an optional length)
expressionSpecifies the value to be converted
styleSpecifies the output format for the date/time

Tabel di bawah ini mewakili nilai-nilai gaya untuk konversi datetime atau smalldatetime data karakter:

Value
(century yy)
Value
(century yyyy)
Input/OutputStandard
-0 or 100mon dd yyyy hh:miAM (or PM)Default
1101mm/dd/yyUSA
2102yy.mm.ddANSI
3103dd/mm/yyBritish/French
4104dd.mm.yyGerman
5105dd-mm-yyItalian
6106dd mon yy 
7107Mon dd, yy 
8108hh:mm:ss 
-9 or 109mon dd yyyy hh:mi:ss:mmmAM (or PM)Default+millisec
10110mm-dd-yyUSA
11111yy/mm/ddJapan
12112yymmddISO
-13 or 113dd mon yyyy hh:mi:ss:mmm (24h) 
14114hh:mi:ss:mmm (24h) 
-20 or 120yyyy-mm-dd hh:mi:ss (24h) 
-21 or 121yyyy-mm-dd hh:mi:ss.mmm (24h) 
-126yyyy-mm-ddThh:mi:ss.mmm (no spaces)ISO8601
-130dd mon yyyy hh:mi:ss:mmmAMHijiri
-131dd/mm/yy hh:mi:ss:mmmAMHijiri


Contoh

Naskah berikut menggunakan CONVERT () berfungsi untuk menampilkan format yang berbeda. Saya akan menggunakan GETDATE () fungsi untuk mendapatkan tanggal / waktu :

CONVERT(VARCHAR(19),GETDATE())
CONVERT(VARCHAR(10),GETDATE(),10)
CONVERT(VARCHAR(10),GETDATE(),110)
CONVERT(VARCHAR(11),GETDATE(),6)
CONVERT(VARCHAR(11),GETDATE(),106)
CONVERT(VARCHAR(24),GETDATE(),113)

Hasilnya akan terlihat seperti ini :

Nov 04 2011 11:45 PM
11-04-11
11-04-2011
04 Nov 11
04 Nov 2011
04 Nov 2011 11:45:34:243




SQL DATEDIFF

SQL DATEDIFF ()

DATEDIFF() mengembalikan fungsi waktu antara dua tanggal.

Syntax

DATEDIFF(datepart,startdate,enddate)

Dimana startdate dan enddate adalah ekspresi tanggal yang valid dan DATEPART dapat menjadi salah satu dari berikut:

datepartAbbreviation
yearyy, yyyy
quarterqq, q
monthmm, m
dayofyeardy, y
daydd, d
weekwk, ww
weekdaydw, w
hourhh
minutemi, n
secondss, s
millisecondms
microsecondmcs
nanosecondns


Contoh

Sekarang kita ingin mendapatkan jumlah hari antara dua tanggal.

Saya menggunakan pernyataan SELECT berikut :

SELECT DATEDIFF(day,'2008-06-05','2008-08-05') AS DiffDate

Hasil :

DiffDate
61

Contoh

Sekarang kita ingin mendapatkan jumlah hari antara dua tanggal (perhatikan bahwa waktu kedua adalah "awal" dari waktu pertama, dan akan menghasilkan angka negatif).

Saya menggunakan pernyataan SELECT berikut :

SELECT DATEDIFF(day,'2008-08-05','2008-06-05') AS DiffDate

Hasil :

DiffDate
-61

SQL DATEADD

SQL DATEADD ()

DATEADD() fungsi menambah atau mengurangi interval waktu tertentu dari tanggal.

Syntax

DATEADD(datepart,number,date)
Dimana tanggal adalah ekspresi tanggal yang valid dan nomor adalah jumlah interval yang ingin Anda tambahkan. Jumlah tersebut dapat menjadi positif, untuk tanggal di masa depan, atau negatif, untuk tanggal di masa lalu.

DATEPART dapat menjadi salah satu dari berikut :

datepartAbbreviation
yearyy, yyyy
quarterqq, q
monthmm, m
dayofyeardy, y
daydd, d
weekwk, ww
weekdaydw, w
hourhh
minutemi, n
secondss, s
millisecondms
microsecondmcs
nanosecondns


Contoh

Asumsikan kita memiliki berikut tabel "Perintah" :

OrderIdProductNameOrderDate
1Jarlsberg Cheese2008-11-11 13:23:44.657
Sekarang kita ingin menambahkan 45 hari pada "OrderDate", untuk menemukan tanggal pembayaran.

Saya menggunakan pernyataan SELECT berikut :

SELECT OrderId,DATEADD(day,45,OrderDate) AS OrderPayDate
FROM Orders

Hasil :

OrderIdOrderPayDate
12008-12-26 13:23:44.657

SQL DATEPART

SQL DATEPART ()

DATEPART () fungsi ini digunakan untuk mengembalikan satu bagian dari tanggal / waktu, seperti tahun, bulan, hari, jam, menit, dll

Syntax

DATEPART(datepart,date)

Dimana tanggal adalah ekspresi tanggal yang valid dan DATEPART dapat menjadi 
salah satu dari berikut :
datepartAbbreviation
yearyy, yyyy
quarterqq, q
monthmm, m
dayofyeardy, y
daydd, d
weekwk, ww
weekdaydw, w
hourhh
minutemi, n
secondss, s
millisecondms
microsecondmcs
nanosecondns


Contoh

Asumsikan kita memiliki berikut tabel "Perintah" :

OrderIdProductNameOrderDate
1Jarlsberg Cheese2008-11-11 13:23:44.657

Pernyataan SELECT berikut :

SELECT DATEPART(yyyy,OrderDate) AS OrderYear,
DATEPART(mm,OrderDate) AS OrderMonth,
DATEPART(dd,OrderDate) AS OrderDay,
FROM Orders
WHERE OrderId=1

akan menghasilkan ini :

OrderYearOrderMonthOrderDay
20081111




SQL GETDATE

SQL GETDATE ()

The GETDATE () fungsi mengembalikan tanggal dan waktu dari SQL Server.

Sintaksis

GETDATE()


Contoh

Pernyataan SELECT berikut :

SELECT GETDATE() AS CurrentDateTime

akan menghasilkan sesuatu seperti ini :

CurrentDateTime
2008-11-11 12:45:34.243
Catatan : Bagian atas waktu berjalan sampai ke mili detik.

Contoh

SQL berikut membuat tabel "Pesanan" tabel dengan kolom datetime (OrderDate) :

CREATE TABLE Orders
(
OrderId int NOT NULL PRIMARY KEY,
ProductName varchar(50) NOT NULL,
OrderDate datetime NOT NULL DEFAULT GETDATE()
)
Perhatikan bahwa kolom OrderDate menentukan GETDATE () sebagai nilai default. Akibatnya, ketika Anda menyisipkan baris ke dalam tabel, tanggal dan waktu secara otomatis dimasukkan ke dalam kolom.

Sekarang kita ingin memasukkan catatan ke dalam tabel "Orders" :

INSERT INTO Orders (ProductName) VALUES ('Jarlsberg Cheese')

Tabel "Perintah" sekarang akan terlihat seperti ini :

OrderIdProductNameOrderDate
1Jarlsberg Keju2008-11-11 13:23:44.657