Click here to load reader
Upload
dennyyahya
View
302
Download
6
Embed Size (px)
Citation preview
www.rahmadani.net 1
Function & UserFunction & UserDefined FunctionDefined Function
Pertemuan ke-13
www.rahmadani.net 2
Indikasi Pemahaman
• Mengetahui Fungsi-fungsi dalam SQL• Mampu menggunakan fungsi SQL untuk
menampilkan data pada kondisi tertentu• Memahami Pengggunaan Grouping• Memahami User Defined Function
www.rahmadani.net 3
Fungsi Agregasi
Biasa digunakan untuk operasi perhitungandari sebuah group data.
Fungsi Agregasi biasanya terdiri dari;AVG, SUM, MIN, MAX dan COUNT.
www.rahmadani.net 4
Syntax;
SELECT nama_fungsi(nama_field) FROM Nama_tabel
www.rahmadani.net 5
Fungsi WaktuDigunakan untuk perhitungan atau menampilkan aritmatikatanggal.Fungsi Waktu terdiri dari;1.GETDATE untuk menampilkan tanggal sekarang
2.DATEADD Syntax: SELECT DATEADD(datepart,number,data)3.DATEIFF Syntax: DATEIFF(datepart,startdate,enddate)
4.DATEPART
5.DATENAME Syntax: SELECTDATENAME(datepart,date)
www.rahmadani.net 6
Contoh;1. SELECT GETDATE() as [Waktu Sekarang]2. Contoh dengan DATEADD;
www.rahmadani.net 7
Fungsi Aritmatika
1. Fungsi SQRT Untuk mencari nilaiakar pada suatu nilai.
2. CEILING Untuk melakukan pembulatannilai keatas dari bilangan desimal.
3. FLOOR Kebalikan dari CEILING4. CONVERT Untuk merubah data dari
satu tipe ke tipe yang lain
www.rahmadani.net 8
Contoh;
www.rahmadani.net 9
Fungsi Karakter
1. LOWER mengubah karakter capital ke kecil2. UPPER kebalikan dari LOWER3. LENMenghitung banyaknya karakter4. LTRIM untuk memotong atau menghilangkan
karakter spasi dari deret sebelah kiri.5. RTRIMKebalikan dari LTRIM6. SUBSTRING Mengambil beberapa nilai karakter
dari sebuah deretan nilai string7. LEFTMengambil atau baca karakter dari kiri8. RIGHT Mengmabil atau baca karakter dari kanan
www.rahmadani.net 10
Contoh;
www.rahmadani.net 11
Klausa GROUPING
Digunakan untuk mengelompokkan databerdasarkan daftar kolom.
Contoh;SELECT asal_daerah FROMTbl_Atlit GROUP BY Asal_Daerah
www.rahmadani.net 12
User Defined Function(UDF)
www.rahmadani.net 13
Maksudnya..• Fungsi yang dibuat user, berupa routine menggunakan TSQL
atau CLR (Common Language Runtime) yang menerimaparameter, melakukan aksi seperti kalkulasi kompleks, danmenghasilkan nilai balik.
• Nilai balik dapat berupa nilai skalar (besaran tunggal) atausebuah tabel
• UDF dapat digunakan:– Dalam klausa SELECT– Dalam pendefinisian UDF lain– Untuk CHECK Constraint– Untuk mendefinisikan sebuah kolom– Untuk menggantikan Stored Procedure– Meningkatkan fungsionalitas Indexed View
www.rahmadani.net 14
Deklarasi Fungsi
• Syntax singkat:
CREATE FUNCTION nama_fungsi[@parameter]RETURNS tipe_data_hasil_balikBEGINbadan_fungsiRETURN nilai/variable scalarEND
www.rahmadani.net 15
Contoh Fungsi
• Contoh:
CREATE FUNCTION Tambah(@a INT,@b INT)RETURNS INTBEGINRETURN @a+@b
END
www.rahmadani.net 16
www.rahmadani.net 17
Latihan;1. Buat sebuah database dengan struktur tabel
sbb;
65Arvi8
75Adit7
50Pandu6
70Rama5
65Najif4
55Esa3
60Farhan2
80Naufal1
NilaiNama_PesertaNo_Peserta
a. Hitung Nilai rata-rata ujian??b. Hitung Nilai rata-rata dengan memberikan nama alias atau nama field pada hasil
dengan nama Rata-rata??c. Kemudian hitung nilai total, nilai tertinggi, nilai terendah, dan banyaknya data??
www.rahmadani.net 18
2. Berdasarkan Database dan Tabel no.1, coba Andatampilkan informasi Jumlah Peserta, Total Nilai, NilaiRata-rata, Nilai Tertinggi dan Nilai Terendah dalamsatu eksekusi??Output;
3. Pada database MYAKADEMIK, hitung jumlahmatakuliah pada tabel Mata_Kuliah??
4. Seperti soal no.3, Hitung Banyak Jumlah Matakuliahberdasarkan Field Kode_Prasyarat??
5. Masih pada database MYAKADEMIK, hitung jlahMahasiswa yang berjenis kelamin Laki-laki??
www.rahmadani.net 19
6. Perhatikan Gambar dibawah ini;Coba Anda bulatkan keatas dan kebawah hasil darinilai Akar..
www.rahmadani.net 20
7. Pada dbase MYAKADEMIK, buatkan listing untukmengelompokkan banyaknya masing-masing pemelukagama pada tabel Dosen??Output;