Jumat, 14 Oktober 2011

Resume SQL1 Pertemuan 2

SORTING DATA

The ORDER BY Keyword

The ORDER BY keyword is used to sort the result-set by a specified column.
The ORDER BY keyword sort the records in ascending order by default.
If you want to sort the records in a descending order, you can use the DESC keyword.

SQL ORDER BY Syntax

 

  

ORDER BY Example

The "Persons" table:



ORDER BY DESC Example

Now we want to select all the persons from the table above, however, we want to sort the persons descending by their last name.
We use the following SELECT statement:

The result-set will look like this:


The GROUP BY Statement

The GROUP BY statement is used in conjunction with the aggregate functions to group the result-set by one or more columns.

SQL GROUP BY Syntax


SQL GROUP BY Example

We have the following "Orders" table:


Now we want to find the total sum (total order) of each customer.
We will have to use the GROUP BY statement to group the customers.
We use the following SQL statement:

The result-set will look like this:

Nice! Isn't it? :)
Let's see what happens if we omit the GROUP BY statement:

The result-set will look like this:

The result-set above is not what we wanted.
Explanation of why the above SELECT statement cannot be used: The SELECT statement above has two columns specified (Customer and SUM(OrderPrice). The "SUM(OrderPrice)" returns a single value (that is the total sum of the "OrderPrice" column), while "Customer" returns 6 values (one value for each row in the "Orders" table). This will therefore not give us the correct result. However, you have seen that the GROUP BY statement solves this problem.

GROUP BY More Than One Column

We can also use the GROUP BY statement on more than one column, like this:


The HAVING Clause

The HAVING clause was added to SQL because the WHERE keyword could not be used with aggregate functions.

SQL HAVING Syntax

 

SQL HAVING Example

We have the following "Orders" table:

Now we want to find if any of the customers have a total order of less than 2000.
We use the following SQL statement:

The result-set will look like this:

Now we want to find if the customers "Hansen" or "Jensen" have a total order of more than 1500.
We add an ordinary WHERE clause to the SQL statement:

The result-set will look like this:



STIKOM SURABAYA
Riko Dwi Christian
D3 - Manajemen Informatika




Resume SQL1 Pertemuan 3

FUNGSI - FUNGSI SQL

Ada dua ketegori fungsi-fungsi dalam Oracle :
  1. Single-Row : Menerima satu baris sebagai operand-nya 
  2. Multiple-Row : Menerima lebih dari satu sebagai operand-nya
Fungsi-fungsi seperti Group By, Sum, Max, Min, Count dan Avg merupakan contoh
fungsi yang termasuk dalam multiple-row.

Fungsi String
Fungsi string digunakan untuk memanipulasi data alfanumerik. Pada bagian ini, kita akan
mengenal beberapa fungsi yang sudah disediakan untuk tujuan tersebut.
  • CONCAT(ekspresi, ekspresi). Digunakan untuk menggabungkan string.
    Contoh: CONCAT('Oracle', ' ', 'Database XE')
  • LOWER(ekspresi), UPPER(ekspresi), dan INITCAP(ekspresi). Fungsi untuk mengubah menjadi huruf kecil, huruf besar dan huruf pertama besar dan sisanya kecil.
    Contoh: LOWER('Oracle')
  • INSTR(ekspresi, substring, [,posisi [,kemunculan]]). Mengembalikan posisi substring dalam ekspresi string (posisi karakter pertama dalam ekspresi string adalah 1).
    Contoh: INSTR('Oracle XE Oracle XE Oracle XE')
  • LENGTH(ekspresi). Panjang dari ekspresi string.
    Contoh: LENGTH('Oracle XE')
  • LDAP(ekspresi, n [, ekspresi2]) dan RPAD(ekspresi, n [, ekspresi2]). Menghasilkan string dengan panjang n karakter, dimana jika panjang dari ekpresi kurang dari n akan diisi dengan karakter ekpresi2.
    Contoh: LPAD('XE', 10, '*')
  • TRIM([[LEADING|TRAILING|BOTH] karakter FROM] ekspresi), LTRIM(ekspresi, string-set), dan RTRIM(ekspresi, string-set). Melakukan pembuangan dari kiri dan kanan ekspresi.
    Contoh: TRIM(' oracle '). TRIM(LEADING '-' FROM '---1212-2122-22').
  • REPLACE(ekspresi, str1 [,str2]) dan TRANSLATE(ekspresi, str1 [, str2]). REPLACE akan mengganti kelompok karakter str1 dengan str2, sedangkan TRANSLATE akan mengganti setiap karakter str1 dengan str2.
    Contoh: REPLACE(' o r a c l e', ' ', ''). TRANSLATE('ukdw', 'ud', 'UD').
  •  SUBSTR(ekspresi, [-]posisi [, panjang]). Fungsi SUBSTR akan mengembalikan potongan string dari ekspresi dari posisi sepanjang panjang. Tanda - menunjukkan pemotongan mulai dari kanan.
    Contoh: SUBSTR('oracle ukdw yogyakarta', -10, 10).
Fungsi Angka
Semua fungsi angka menerima parameter bertipe angka.
  • ABS(n), mengembalikan nilai positif atau tidak bertanda dari n.
    Contoh: ABS(-10).
  • CEIL(n) dan FLOOR(n), keduanya mirip dengan pembulatan dan pemotongan. CEIL mengembalikan nilai integer yang lebih besar atau sama dengan n, sedangkan FLOOR akan mengembalikan nilai integer yang lebih kecil atau sama dengan n.
    Contoh: CEIL(1.1). FLOOR(1.9).
  • MOD(m, n) akan mengembalikan nilai sisa bagi dari m/n.
    Contoh: MOD(5,2).
  • POWER(m,n) akan mengembalikan pangkat mn.
    Contoh: POWER( 2, 3).
  • ROUND(n [, posisi]) akan membulatkan bilangan n pada posisi positif untuk dibelakang koma dan minus untuk di depan koma. Pembulatan dilakukan jika 5 atau lebih akan dibulankan ke atas, dan jika kurang dari 5 akan dibulatkan ke bawah.
    Contoh: ROUND(1.42356, 2)
  • SIGN(n) akan mengembalikan -1 jika negatif, 0 jika 0, dan 1 jika positif.
    Contoh: SIGN(-10).
  • SQRT(n) akan mengembalikan akar pangkat dari n.
    Contoh: SQRT(9).
  • TRUNC(n [, posisi]) akan mengembalikan pembulatan ke bawah.
    Contoh: TRUNC(147.65, 1). TRUNC(147.65, -1).
Fungsi Tanggal
  • ADD_MONTHS(tgl, bulan), akan menambahkan sejumlah bulan tertentu ke tanggal.
    Contoh: ADD_MONTHS('20-APR-80', 5).
  • NEXT_DAY(tgl, nmhari) akan mengembalikan data tanggal untuk nmhari berikutnya dari posisi tgl.
    Contoh: NEXT_DAY('20-APR-11', 'THUESDAY').
  • LAST_DAY(tgl), mengembalikan posisi tanggal di akhir bulan yang diwakili oleh tgl.
    Contoh: LAST_DAY('20-APR-11').
  • MONTHS_BETWEEN(tgl1, tgl2), akan mengembalikan selisih bulan antara tgl1 dan tgl2.
    Contoh: MONTHS_BETWEEN('20-APR-11', '18-FEB-11').
  • SYSDATE, SYSTIMESTAMP, keduanya akan mengembalikan tanggal dan waktu sekarang.
  • ROUND(tgl [,format]) akan mengembalikan pembulatan tanggal ke atas dengan satuan pembulatan tergantung pada format.
    Contoh: ROUND(SYDATE, 'YEAR').
  • TRUNC(tgl [, format]) akan mengembalikan pembulan ke bawah dengan satuan pembuatan tergantung pada format.
    Contoh: TRUNC(SYSDATE, 'YEAR').
Untuk format ROUND dan TRUNC terhadap data tanggal dapat menggunakan tabel
yang sudah disediakan oleh Oracle Documentation1 berikut :

  •  EXTRACT(format, tgl), akan mengambil nilai tertentu, baik HOUR, MINUTE, SECOND, YEAR, MONTH, DAY dari tgl.
    Contoh: EXTRACT(YEAR FROM DATE 'e2011-03-10').
    Contoh: EXTRACT( MONTH FROM SYSDATE).
Fungsi Konversi
Fungsi konversi yang akan dipelajari pada modul ini ada dua kelompok, yaitu konversi dari
karakter ke tanggal dan sebaliknya, serta konversi dari karakter ke angka dan sebaliknya.
Pertama adalah fungsi konversi untuk tanggal dan karakter:
  • TO_DATE(tgl [,format])
  • TO_CHAR(tgl [, format])
Terhadap kedua fungsi tersebut, kita harus menggunakan format yang sudah ditentukan
sebagai berikut (Powell, McCullough-Dieter, 2005, hal. 192) :

STIKOM SURABAYA
Riko Dwi Christian
D3 - Manajemen Informatika

Resume SQL1 Pertemuan 1


PENGENALAN BASIS DATA 

Basis Data
  • Sekumpulan data yang terintegrasi yang diorganisasi untuk memenuhi kebutuhan para pemakai di dalam suatu organisasi.

DBMS (Database Management System)

  •  Perangkat lunak yang menangani semua pengaksesan ke database.

Sistem Basis Data

  • DBMS + Basis Data

Penggambaran Sistem Basis Data

Keuntungan dari file manajemen database

ØTerkontrolnya kerangkapan data
Ø  Terpeliharanya kekonsistenan data
Ø  Data dapat dipakai bersama-sama
Ø  Data dapat distandarisasikan
Ø  Keamanan data dapat terjamin
Ø  Integritas data terpelihara
Ø  Data independence

Beberapa Istilah yang Digunakan Pada Database

1. Enterprise
2. Entitas
3. Atribut (Element Data)
4. Nilai Data (Data Value)
5. Kunci Elemen (Key Data Elemen)
6. Record Data
Komponen Sistem Database
1.  Data
                  · Terintegrasi (integrated) 
                  · Dapat dipakai bersama-sama (shared).
2.  Perangkat Keras (Hardware)
3.  Perangkat Lunak (Software)
4.  Pemakai

PENGGUNA DATABASE
a.      System Engineer
b.            Database Administrator (DBA)
·         Tugas DBA
·         Program Utility yang digunakan oleh DBA
-          Loading Routines
-          Reorganization Routines
-          Journaling Routines
-          Recovery Routines
-          Statistical Analysis Routines
c.             Programmer
d.            Pemakai Akhir (End-user)

Dasar-Dasar Perintah SQL

Data Definition Language (DDL)
Data Definition Language (DDL) merupakan sub bahasa SQL yang digunakan untuk membangun kerangka database. Ada tiga perintah yang termasuk dalam DDL, yaitu:
  • § CREATE : Perintah ini digunakan untuk membuat, termasuk di antaranya membuat database baru, tabel baru, view baru, dan kolom.
  • § ALTER : Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat. Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
  • § DROP : Perintah ini digunakan untuk menghapus database dan tabel

Data Manipulation Language (DML)
Data Manipulation Language (DML) merupakan sub bahasa SQL yang digunakan untuk memanipulasi data dalam database yang telah terbuat. Perintah yang digunakan, di antaranya:
  • § INSERT : Perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke dalam tabel. Penggunaannya setelah database dan tabel selesai dibuat.
  • § SELECT : Perintah ini digunakan untuk mengambil data atau menampilkan data dari satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan dalam layar prompt MySQL secara langsung maupun ditampilkan pada tampilan aplikasi.
  • § UPDATE : Perintah ini digunakan untuk memperbarui data lama menjadi data terkini. Jika Anda memiliki data yang salah atau kurang up to date dengan kondisi sekarang, maka dapat diubah isi datanya menggunakan perintah UPDATE.
  • § DELETE : Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang dihapus merupakan data yang sudah tidak diperlukan lagi. Pada saat menghapus data, perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah hilang tidak dapat dikembalikan lagi.


Data Control Language (DCL)
Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server databasenya. Perintah DCL, di antaranya:
  • § GRANT : Perintah ini digunakan untuk memberikan hak/ijin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem databasenya.
  • § REVOKE : Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.

CONTOH:
Membuat query dalam SQL
create database coba
create table mhs(
nrp char(10) not null,
nama varchar(25) not null,
kelas int(3) not null,
mata_kuliah char(7) not null,
nilai int(4) not null,
constraint pk_mahasiswa primary key (nrp)
)
INSERT INTO `coba`.`mhs` (`nrp`, `nama`, `kelas`, `mata_kuliah`, `nilai`) VALUES (”, ”, ”, ”, ”);
SELECT * FROM `mhs` WHERE `nama`=’ ‘
DELETE FROM `mhs` WHERE CONVERT(`mhs`.`nrp` USING utf8) = ”
ALTER TABLE `mhs`
DROP `nrp`,
DROP `nama`,
DROP `kelas`,
DROP `mata_kuliah`,
DROP `nilai`;

STIKOM SURABAYA
Riko Dwi Christian
D3 - Manajemen Informatika

Sabtu, 01 Oktober 2011

Resume PcSi Pertemuan 2


Data Flow Diagram

DOC :

 SIS :


DFD
  • Adalah perangkat-perangkat analisis dan perancangan yang terstruktur sehingga memungkinkan penganalis sistem memahami sistem dan subsistem secara visual sebagai suatu rangkaian aliran data yang saling berkaitan.

Entitas (Entitas Eksternal) 
  • Entitas eksternal (bagian lain, perusahaan, seseorang/mesin) yang dapat mengirim data/menerima data dari sistem.
  • ·         Sumber/tujuan data yang dianggap eksternal terhadap sistem yang sedang digambarkan.
  • ·         Entitas-entitas harus diberi nama dengan suatu kata benda.
  • ·    Entitas yang sama dapat digunakan lebih dari 1 kali atas suatu DFD tertentu untuk menghindari persilangan antara jalur-jalur aliran data.

Aliran Data
  • ·         Perpindahan data dari satu titik ke titik yang lain, dengan kepala tanda panah mengarah ke tujuan anda.

Proses
  • ·         Menunjukkan adanya proses transformasi.
  • ·     Proses-proses selalu menunjukkan suatu perubahan data jadi aliran data yang meninggalkan proses selalu diberi label yang berbeda.
  • ·         Diberi nama kata kerja.

Penyimpanan Data
  • ·    Diberi nama dengan kata benda yang sesuai data apa yang disimpan di data store, misalnya data konsumen, transaksi penjualan, dll.
  • ·         Penyimpanan data sementara, seperti kertas catatan atau sebuah komputer sementara tidak dimasukkan ke dalam DFD.

Membuat Diagram Konteks
  • ·         Harus berupa suatu pandangan, yang mencakup masukan-masukan dasar, sistem umum & keluaran.
  • ·    Adalah tingkatan tertinggi dalam DFD dan hanya memuat satu proses, menunjukkan sistem secara keseluruhan.
  • ·         Diagram Konteks diberi nomor 0 (nol).
  • ·         Tidak memuat penyimpanan data.

Diagram Level 0
  • ·         Masukkan dan keluaran yang ditetapkan dalam diagram yang pertama tetap konstan dalam semua diagram sub urutannya.
  • ·        Diagram 0 adalah pengembangan diagram konteks & mencakup sampai 9 proses. Setiap proses diberi nomor bilangan bulat, umumnya dimulai dari sudut kiri atas diagram dan mengarah ke sudut sebelah kanan bawah.
  • ·         Penyimpanan data utama dari sistem dan semua entitas eksternal dimasukkan ke dalam diagram 0.

Kesalahan Pada Diagram
·         Lupa memasukkan suatu aliran data/mengarahkan kepala anak panah pada arah yang salah.
·         Aliran data/proses-proses pemberian label yang tidak tepat.
·         Memasukkan lebih dari 9 proses pada DFD.
·         Mengabaikan aliran data.
Terdapat dua jenis terminator :
1. Terminator Sumber (source) : merupakan terminator yang menjadi sumber.
2. Terminator Tujuan (sink) : merupakan terminator yang menjadi tujuan data / informasi sistem.

Ada 3 hal penting yang harus diingat tentang terminator :
  • Terminator merupakan bagian/lingkungan luar sistem. Alur data yang menghubungkan terminator dengan berbagai proses sistem, menunjukkan hubungan sistem dengan dunia luar.
  • Profesional Sistem tidak berhak mengubah isi atau cara kerja organisasi atau prosedur yang berkaitan dengan terminator.
  • Hubungan yang ada antar terminator yang satu dengan yang lain tidak digambarkan pada DFD.

Ada beberapa hal yang perlu diperhatikan tentang proses :
  • Proses harus memiliki input dan output.
  • Proses dapat dihubungkan dengan komponen terminator, data store atau proses melalui alur data.
  • Sistem/bagian/divisi/departemen yang sedang dianalisis oleh profesional sistem digambarkan dengan komponen proses.

Komponen Data Store
·        Komponen ini digunakan untuk membuat model sekumpulan paket data dan diberi nama dengan kata benda jamak, misalnya Mahasiswa.
·        Data store ini biasanya berkaitan dengan penyimpanan-penyimpanan, seperti file atau database yang berkaitan dengan penyimpanan secara komputerisasi, misalnya file disket, file harddisk, file pita magnetik. Data store juga berkaitan dengan penyimpanan secara manual seperti buku alamat, file folder, dan agenda. Suatu data store dihubungkan dengan alur data hanya pada komponen proses, tidak dengan komponen DFD lainnya. Alur data yang menghubungkan data store dengan suatu proses mempunyai pengertian sebagai berikut :
1.    Alur data dari data store yang berarti sebagai pembacaan atau pengaksesan satu paket tunggal data, lebih dari satu paket data, sebagian dari satu paket tunggal data, atau sebagian dari lebih dari satu paket data untuk suatu proses.
2.  Alur data ke data store yang berarti sebagai pengupdatean data, seperti menambah satu paket data baru atau lebih, menghapus satu paket atau lebih, atau mengubah/memodifikasi satu paket data atau lebih.
  • Pada pengertian pertama jelaslah bahwa data store tidak berubah, jika suatu paket data/informasi berpindah dari data store ke suatu proses. Sebaliknya pada pengertian kedua data store berubah sebagai hasil alur yang memasuki data store. Dengan kata lain, proses alur data bertanggung jawab terhadap perubahan yang terjadi pada data store.
 DAFTAR PUSTAKA

Sumber: *Catatan
             *Internet

STIKOM SURABAYA
Riko Dwi Christian
D3 - Manajemen Informatika