Menampilkan Nomor Record tertentu dalam SQL Server 2000
By: pieter_edison@yahoo.com
Contoh Kasus :
Misalkan dalam suatu database anda, perusahaan anda memiliki database yang memiliki master table A.Kemudian dalam suatu kasus tertentu, anda ingin menampilkan record table A tersebut dengan nomor urut tertentu.
Contoh table A tersebut memiliki field : Nama dan Alamat. Dan ingin ditampilkan semua data Nama dan Alamat disertai dengan nomor urut letak data didalam table. Hal ini biasanya digunakan untuk penggunaan report atau nomor urutan grid (nomor baris grid) dalam kode program klient anda, misalkan dengan menggunakan gridview di VB.NET
Hal ini dapat dilakukan dengan melakukan sedikit tip dan trik di SQL Server, khususnya SQL Server 2000.
Misalkan data tabel A Anda adalah :
Tablename : A
Nama Alamat
Nama1 DATA1
Nama2 DATA2
Nama3 DATA3
Nama4 DATA4
Nama5 DATA5
Nama6 DATA6
Nama7 DATA7
Nama8 DATA8
Nama9 DATA9
Nama10 DATA10
Nama11 DATA11
Nama12 DATA12
Nama13 DATA13
Dan Hasil yang anda inginkan adalah sebagai berikut :
Tablename : A
Nomor Baris Nama Alamat
1 Nama1 DATA1
2 Nama2 DATA2
3 Nama3 DATA3
4 Nama4 DATA4
5 Nama5 DATA5
6 Nama6 DATA6
7 Nama7 DATA7
8 Nama8 DATA8
9 Nama9 DATA9
10 Nama10 DATA10
11 Nama11 DATA11
12 Nama12 DATA12
13 Nama13 DATA13
Hal ini dapat dilakukan dengan menggunakan 2 cara, menggunakan temporary table atau menggunakan deklarasi variable table.
Cara 1 : Menggunakan temporary table
Syntax SQL : SELECT IDENTITY(int,1,1) as [Nomor Baris], Nama, Alamat) INTO #X FROM A
Akan membuat nomor baris dari syntax IDENTITY dengan tipe int kedalam table temporary X dari table A
Selanjutnya anda tinggal menampilkan data tersebut dengan perintah :
SELECT * FROM #X
Jangan lupa untuk mendrop table temporary tersebut
DROP TABLE #X
Hasil
Nomor Baris Nama Alamat
1 Nama1 DATA1
2 Nama2 DATA2
3 Nama3 DATA3
4 Nama4 DATA4
5 Nama5 DATA5
6 Nama6 DATA6
7 Nama7 DATA7
8 Nama8 DATA8
9 Nama9 DATA9
10 Nama10 DATA10
11 Nama11 DATA11
12 Nama12 DATA12
13 Nama13 DATA13
Cara 2 : Menggunakan deklarasi table
Syntax SQL :
DECLARE @TEMP TABLE
([Nomor Baris] int identity,
Nama varchar(50),
Alamat varchar(50)
)
Kemudian anda tinggal menggunakan syntax insert table untuk mengisi data ke dalam table tersebut
Dengan query sqlnya sebagai berikut :
Syntax SQL :
INSERT INTO @TEMP
SELECT Nama, Alamat FROM A
Dan dari query diatas, anda tinggal menampilkan record dari Tabel yang sudah dideklarasi diatas yaitu @TEMP dengan menggunakan perintah sql SELECT.
Syntax SQL :
SELECT * FROM @TEMP
Hasilnya akan sama dengan cara 1 diatas.
Dari kedua cara diatas, jika anda ingin menampilkan nomor baris yang ganjil atau yang genap saja, bisa dengan menggunkan logika nomor baris dibagi 2 ( module ) yang mana sisanya = 0
Contoh untuk Bilangan Ganjil dari cara 1:
SELECT * FROM #X
WHERE [Nomor Baris] % 2 <>0
Contoh untuk Bilangan Ganjil dari cara 2:
SELECT * FROM @TEMP
WHERE [Nomor Baris] % 2 <>0
Contoh untuk Bilangan Genap dari cara 1:
SELECT * FROM #X
WHERE [Nomor Baris] % 2 =0
Contoh untuk Bilangan Genap dari cara 2:
SELECT * FROM @TEMP
WHERE [Nomor Baris] % 2 =0
Demikian hasil yang diperoleh dan akhir dari isi tutorial ini.
Best Regards,
Pieter
By: pieter_edison@yahoo.com
Contoh Kasus :
Misalkan dalam suatu database anda, perusahaan anda memiliki database yang memiliki master table A.Kemudian dalam suatu kasus tertentu, anda ingin menampilkan record table A tersebut dengan nomor urut tertentu.
Contoh table A tersebut memiliki field : Nama dan Alamat. Dan ingin ditampilkan semua data Nama dan Alamat disertai dengan nomor urut letak data didalam table. Hal ini biasanya digunakan untuk penggunaan report atau nomor urutan grid (nomor baris grid) dalam kode program klient anda, misalkan dengan menggunakan gridview di VB.NET
Hal ini dapat dilakukan dengan melakukan sedikit tip dan trik di SQL Server, khususnya SQL Server 2000.
Misalkan data tabel A Anda adalah :
Tablename : A
Nama Alamat
Nama1 DATA1
Nama2 DATA2
Nama3 DATA3
Nama4 DATA4
Nama5 DATA5
Nama6 DATA6
Nama7 DATA7
Nama8 DATA8
Nama9 DATA9
Nama10 DATA10
Nama11 DATA11
Nama12 DATA12
Nama13 DATA13
Dan Hasil yang anda inginkan adalah sebagai berikut :
Tablename : A
Nomor Baris Nama Alamat
1 Nama1 DATA1
2 Nama2 DATA2
3 Nama3 DATA3
4 Nama4 DATA4
5 Nama5 DATA5
6 Nama6 DATA6
7 Nama7 DATA7
8 Nama8 DATA8
9 Nama9 DATA9
10 Nama10 DATA10
11 Nama11 DATA11
12 Nama12 DATA12
13 Nama13 DATA13
Hal ini dapat dilakukan dengan menggunakan 2 cara, menggunakan temporary table atau menggunakan deklarasi variable table.
Cara 1 : Menggunakan temporary table
Syntax SQL : SELECT IDENTITY(int,1,1) as [Nomor Baris], Nama, Alamat) INTO #X FROM A
Akan membuat nomor baris dari syntax IDENTITY dengan tipe int kedalam table temporary X dari table A
Selanjutnya anda tinggal menampilkan data tersebut dengan perintah :
SELECT * FROM #X
Jangan lupa untuk mendrop table temporary tersebut
DROP TABLE #X
Hasil
Nomor Baris Nama Alamat
1 Nama1 DATA1
2 Nama2 DATA2
3 Nama3 DATA3
4 Nama4 DATA4
5 Nama5 DATA5
6 Nama6 DATA6
7 Nama7 DATA7
8 Nama8 DATA8
9 Nama9 DATA9
10 Nama10 DATA10
11 Nama11 DATA11
12 Nama12 DATA12
13 Nama13 DATA13
Cara 2 : Menggunakan deklarasi table
Syntax SQL :
DECLARE @TEMP TABLE
([Nomor Baris] int identity,
Nama varchar(50),
Alamat varchar(50)
)
Kemudian anda tinggal menggunakan syntax insert table untuk mengisi data ke dalam table tersebut
Dengan query sqlnya sebagai berikut :
Syntax SQL :
INSERT INTO @TEMP
SELECT Nama, Alamat FROM A
Dan dari query diatas, anda tinggal menampilkan record dari Tabel yang sudah dideklarasi diatas yaitu @TEMP dengan menggunakan perintah sql SELECT.
Syntax SQL :
SELECT * FROM @TEMP
Hasilnya akan sama dengan cara 1 diatas.
Dari kedua cara diatas, jika anda ingin menampilkan nomor baris yang ganjil atau yang genap saja, bisa dengan menggunkan logika nomor baris dibagi 2 ( module ) yang mana sisanya = 0
Contoh untuk Bilangan Ganjil dari cara 1:
SELECT * FROM #X
WHERE [Nomor Baris] % 2 <>0
Contoh untuk Bilangan Ganjil dari cara 2:
SELECT * FROM @TEMP
WHERE [Nomor Baris] % 2 <>0
Contoh untuk Bilangan Genap dari cara 1:
SELECT * FROM #X
WHERE [Nomor Baris] % 2 =0
Contoh untuk Bilangan Genap dari cara 2:
SELECT * FROM @TEMP
WHERE [Nomor Baris] % 2 =0
Demikian hasil yang diperoleh dan akhir dari isi tutorial ini.
Best Regards,
Pieter

0 Comments:
Post a Comment
<< Home