20

Click here to load reader

Part 13 function dan user defined function

Embed Size (px)

Citation preview

Page 1: Part 13  function dan user defined function

www.rahmadani.net 1

Function & UserFunction & UserDefined FunctionDefined Function

Pertemuan ke-13

Page 2: Part 13  function dan user defined function

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

Page 3: Part 13  function dan 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.

Page 4: Part 13  function dan user defined function

www.rahmadani.net 4

Syntax;

SELECT nama_fungsi(nama_field) FROM Nama_tabel

Page 5: Part 13  function dan user defined function

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)

Page 6: Part 13  function dan user defined function

www.rahmadani.net 6

Contoh;1. SELECT GETDATE() as [Waktu Sekarang]2. Contoh dengan DATEADD;

Page 7: Part 13  function dan user defined function

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

Page 8: Part 13  function dan user defined function

www.rahmadani.net 8

Contoh;

Page 9: Part 13  function dan user defined function

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

Page 10: Part 13  function dan user defined function

www.rahmadani.net 10

Contoh;

Page 11: Part 13  function dan user defined function

www.rahmadani.net 11

Klausa GROUPING

Digunakan untuk mengelompokkan databerdasarkan daftar kolom.

Contoh;SELECT asal_daerah FROMTbl_Atlit GROUP BY Asal_Daerah

Page 12: Part 13  function dan user defined function

www.rahmadani.net 12

User Defined Function(UDF)

Page 13: Part 13  function dan user defined function

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

Page 14: Part 13  function dan user defined function

www.rahmadani.net 14

Deklarasi Fungsi

• Syntax singkat:

CREATE FUNCTION nama_fungsi[@parameter]RETURNS tipe_data_hasil_balikBEGINbadan_fungsiRETURN nilai/variable scalarEND

Page 15: Part 13  function dan user defined function

www.rahmadani.net 15

Contoh Fungsi

• Contoh:

CREATE FUNCTION Tambah(@a INT,@b INT)RETURNS INTBEGINRETURN @a+@b

END

Page 16: Part 13  function dan user defined function

www.rahmadani.net 16

Page 17: Part 13  function dan user defined function

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??

Page 18: Part 13  function dan user defined function

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??

Page 19: Part 13  function dan user defined function

www.rahmadani.net 19

6. Perhatikan Gambar dibawah ini;Coba Anda bulatkan keatas dan kebawah hasil darinilai Akar..

Page 20: Part 13  function dan user defined function

www.rahmadani.net 20

7. Pada dbase MYAKADEMIK, buatkan listing untukmengelompokkan banyaknya masing-masing pemelukagama pada tabel Dosen??Output;