Selasa, 22 April 2008

Fungsi Agregat

Tulisan ini adalah catatan praktikum Basis Data yang sempat saya catat di lab, hari Selasa 22 April 2008.

SELECT * FROM class;

digunakan untuk menampilkan isi tabel class

SELECT COUNT(name) FROM CLASS;
digunakan untuk menghitung banyaknya baris dalam kolom name tabel class

SELECT COUNT(distinct name) FROM CLASS;

digunkan untuk menghitung banyaknya baris, jika ada data yang sama dalam sel yang berbeda, maka dihitung sebagai satu baris

SELECT AVG(age) FROM student;
digunakan untuk menghitung rata-rata data dari kolom age, tabel student

SELECT MIN(age), MAX(age) FROM student;
digunkan untuk menampilkan nilai terkecil dan terbesar dari kolom age, tabel student

SELECT SUM(age)/ COUNT(age) FROM student;
digunakan untuk menghitung jumlah umur kemudian membaginya dengan banyaknya baris. hasil ini sama dengan Query fungsi agregat AVG diatas.

jika ada data kosong/ tidak diisi (bukan nilainya nol lho), berarti dianggap tidak ada data itu dan sel itu juga dianggap tidak ada

CONTOH KASUS:

  1. Menampilkan banyaknya kelas yang diajar oleh dosen. hasilnya adalah dua tabel, tabel pertama nama dari lecturer dan tabel kedua banyaknya kelas yang diajar.
    jawab:
    SELECT lecturer, COUNT(name) FROM class GROUP BY lecturer;
  2. Menampilkan usia minimum dan maksimum dari tiap departemen
  3. jawab:
    SELECT major, MIN(age), MAX(age) FROM student GROUP BY major;
  4. Menampilkan rata-rata usia mahasiswa dari tiap departemen
  5. jawab:
    SELECT major, MIN(age), MAX(age) FROM student GROUP BY major;
  6. Menampilkan dosen dan banyaknya kelas yang diajar kemudian mengurutkan hasilnya
  7. jawab:
    SELECT lecturer, COUNT(name) as hitung
    FROM class
    GROUP BY lecturer
    ORDER BY hitung DESC;
  8. Menampilkan dosen dan banyaknya kelas yang diajar kemudian mengurutkan hasilnya, kemudian menampilkan dosen yang paling banyak mengajar kelas.
    jawab:
    SELECT lecturer, COUNT(name) as hitung
    FROM class
    GROUP BY lecturer
    ORDER BY hitung DESC
    LIMIT 1;
    LIMIT, berfungsi untuk membatasi output, dalam contoh ini output yang ditampilkan hanyalah baris pertama.
  9. Menampilkan dosen yang mengajar lebih dari 1 subject.
    Jawab:
    SELECT lecturer, COUNT(name) as jumlah
    FROM class
    GROUP BY lecturer
    HAVING jumlah > 1;
catatan:
  • Dalam praktikum ini saya menggunkan MySQL
  • Untuk menampilkan hasil query kita blok query yang akan dicoba kemudian tekan ctrl+enter secara bersamaan
  • Jangan ada spasi diantara fungsi agregat dan parameternya. contoh: SUM(age)
  • anda boleh menggunakan huruf besar dan kecil pada fungsi agregat, ini tidak akan mempengaruhi hasil (tidak case sensitif)
Read More..

Tulisan ini adalah catatan praktikum Basis Data yang sempat saya catat di lab, hari Selasa 22 April 2008.

SELECT * FROM class;
digunakan untuk menampilkan isi tabel class

SELECT COUNT(name) FROM CLASS;
digunakan untuk menghitung banyaknya baris dalam kolom name tabel class

SELECT COUNT(distinct name) FROM CLASS;
digunkan untuk menghitung banyaknya baris, jika ada data yang sama dalam sel yang berbeda, maka dihitung sebagai satu baris SELECT AVG(age) FROM student;
digunakan untuk menghitung rata-rata data dari kolom age, tabel student

SELECT MIN(age), MAX(age) FROM student;
digunkan untuk menampilkan nilai terkecil dan terbesar dari kolom age, tabel student

SELECT SUM(age)/ COUNT(age) FROM student;
digunakan untuk menghitung jumlah umur kemudian membaginya dengan banyaknya baris. hasil ini sama dengan Query fungsi agregat AVG diatas.

jika ada data kosong/ tidak diisi (bukan nilainya nol lho), berarti dianggap tidak ada data itu dan sel itu juga dianggap tidak ada

CONTOH KASUS:

1. Menampilkan banyaknya kelas yang diajar oleh dosen. hasilnya adalah dua tabel, tabel pertama nama dari lecturer dan tabel kedua banyaknya kelas yang diajar.
jawab:
SELECT lecturer, COUNT(name) FROM class GROUP BY lecturer;
2. Menampilkan usia minimum dan maksimum dari tiap departemen
jawab:
3. SELECT major, MIN(age), MAX(age) FROM student GROUP BY major;Menampilkan rata-rata usia mahasiswa dari tiap departemen
jawab:
SELECT major, MIN(age), MAX(age) FROM student GROUP BY major;
4. Menampilkan dosen dan banyaknya kelas yang diajar kemudian mengurutkan hasilnya
jawab:
SELECT lecturer, COUNT(name) as hitung
FROM class
GROUP BY lecturer
ORDER BY hitung DESC;
5. Menampilkan dosen dan banyaknya kelas yang diajar kemudian mengurutkan hasilnya, kemudian menampilkan dosen yang paling banyak mengajar kelas.
jawab:
SELECT lecturer, COUNT(name) as hitung
FROM class
GROUP BY lecturer
ORDER BY hitung DESC
LIMIT 1;
LIMIT, berfungsi untuk membatasi output, dalam contoh ini output yang ditampilkan hanyalah baris pertama.
6. Menampilkan dosen yang mengajar lebih dari 1 subject.
Jawab:
SELECT lecturer, COUNT(name) as jumlah
FROM class
GROUP BY lecturer
HAVING jumlah > 1;

catatan:

* Dalam praktikum ini saya menggunkan MySQL
* Untuk menampilkan hasil query kita blok query yang akan dicoba kemudian tekan ctrl+enter secara bersamaan
* Jangan ada spasi diantara fungsi agregat dan parameternya. contoh: SUM(age)
* anda boleh menggunakan huruf besar dan kecil pada fungsi agregat, ini tidak akan mempengaruhi hasil (tidak case sensitif)
Read More..

Senin, 31 Maret 2008

KONEKSI KE DATABASE

import java.sql.*;
public class MySQLDemo
{
public static void main(String[] args)
{
try {
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
String cs = “jdbc:mysql://localhost:3306/shop?user=test&password=test”;
Connection cn = DriverManager.getConnection(cs);
String qry = “INSERT INTO Customer ”;
qry += “VALUES (null, 'Endy', 'Surabaya', 'endy@artivisi.com')”;
Statement stm = cn.createStatement();
int result = stm.executeUpdate(qry);

if (result == 0) {
System.out.println(“Insert Gagal”);
}
else
{
System.out.println(“Insert Sukses”);
}

}
catch (Exception err) {err.printStackTrace();}
}
} Read More..

Kamis, 27 Maret 2008

LINKED LIST

/* SOURCE CODE LINKED LIST
ditulis ketika praktikum STRUKTUR DATA
HIDUP ILKOM IPB*



# include
# include
# include
# include

typedef struct mahasiswa {
char nrp [10];
char nama [30];
struct mahasiswa * next;
} mahasiswa;
typedef mahasiswa *mhs;
mhs head, tail, ptr_new;


int main () {
int pilihan;
mhs cetak;
back: ;
printf ("\n 1. Cetak Linked List");
printf ("\n 2. Tambah Belakang");
printf ("\n 3. Keluar");
printf ("\n masukan pilihan: ");
scanf ("%d,", &pilihan);
switch (pilihan){
case 1:
if (head == null)
printf ("Linked List Kosong!")
else {
cetak=head;
while (cetak!=null){
printf ("Nama= %s nrp= %s", cetak -> nama, cetak -> nrp);
cetak=cetak -> next}
}
getche (), goto back;

case 2:
ptr_new=(mhs) malloc (size of (mahasiswa));
if (ptr_new==null);
printf ("\n memmory tidak cukup");
else {
printf ("\n Nama");
gets (ptr_new -> nama);
printf ("\n NRP");
gets (ptr_new -> nrp);
ptr_new -> next = null;
if (head==null)
head = ptr_new;
else
tail -> next = ptr_new;
}
tail=ptr_new;
goto back;

case 3: break;
}
}


Read More..

Rabu, 05 Desember 2007

script

/*
Name: Windu Purnomo
Copyright:
Author:
Date: 10/03/04 03:59
Description: memecah string
*/

#include
#include
main ()
{
int pos=0;
char b, kata[50];
printf ("silahkan menulis string:\n");
gets(kata);
while (kata[pos]!='\0')
{
if (kata[pos]==' ')
printf ("\n");
else
printf ("%c",kata[pos]);
pos ++;
}
getch ();
return 0;
} Read More..

Selasa, 04 Desember 2007

ALGOR ... oh... ALGOR

Algoritma dan Pemrograman....
Sudah lama aku memimpikan mengetik ratusan bahkan ribuan baris program. Dan kini semuanya sudah didepan mata, aku sedang menggelutinya. Mengerjakan dan menyelesaikan tantangan.

Ketika masih kecil aku sering kegirangan ketika mendengar kata program, 'memrogram', dan kata-kata lain yang nyangkut-nyangkut sama kata program. Dulu tetanggaku sering bilang "TV ini harus diproram dulu", sebenarnya apa sih memprogram itu, kedengaranny keren banget. aku bingung tapi, aku tertantang untuk mencarinya. Kalo lagi main ke perpus kebetulan ngelewatin buku, ada tulisannya "program...", aku langsung nengok. Segera saja aku ambil buku itu, tapi setelah dibuka-buka, wuih...kata katanya aneh, keren, modern, canggih euy, (biarp ga ngerti aku tetep seneng). Tapi di sisi lain pertanyaanku belum terjawab, aku semakin TERTANTANG.
MEMBUAT PROGRAM, suatu yang begitu misteri. Aku bagaikan orang yang kehausan, orang yang merindukan, ingin mengetahui, ingin mencoba, ingin menyelesaikan tantangan (program), ingin expert.
aku berbinar-binar ketika kuliah hari pertama di ILKOM, kuliah Algoritma dan Pemrograman, Mr Julio jelasin dengan mantap dan jelas, mata kuliah ini. akhirnya.... pintu sudah terbuka, pencarian yang lama, kerinduan yang terpendam, sudah terbalaskan.
pertama aku belajar nampilan tulisan di comannd prompt kata "HELLO". Begitu bisa... HORE...aku bisa, "Ini yang aku cari sejak dulu".
Terimakasih ya Alloh, Engkau telah mmpertumakan aku dengan yang aku cari selama ini. Jadikan diri ini tetap bersemangat, tetap tekun, tetap memiliki etos kerja yang tinggi. Jadikan ini semua pembuka pintu ke ridhoanMu.
Read More..

YEAH...!!! AKU MENANG

Minggu 2 Desember 2007
Diawali sebuah keraguan akan kemampuan diri, diawali dari rasa sayang mengeluarkan uang...
Semua ini akhirnya terjadi, kemenangan yang sunguh menggembirakan.
.....
Sejak dulu aku menginginkan menjadi enterpreuneur, tapi terkadang tidak yakin dengan kemampuan diri, tapi dengan kemenangan ini rasa percaya diriku bangkit lagi.
Ini adalah awal yang baik, aku sudah menguasai teknik untuk memenangkan kompetisi, jalan yang dulu terlihat samar kini terlihat semakin jelas. Dan insya Alloh aku tidak pesimis lagi.

Simulasi bisnis dengan JA TITAN,
Read More..