Selasa, 10 Mei 2011

Ferguson: MU Selalu Begitu

 
Manajer Manchester United Alex Ferguson.

 

MANCHESTER, KOMPAS.com — Alex Ferguson mengatakan, dalam keadaan seunggul apa pun, timnya selalu menunjukkan sikap seakan-akan mereka tertinggal dari lawan.
Hal tersebut berkaitan dengan kemenangan 2-1 yang diraih Manchester United (MU) atas Chelsea dalam lanjutan Premier League. Mereka sempat unggul dua gol, tetapi tak kehilangan konsistensi menciptakan peluang.
"Kami melakukannya setiap waktu, bersaing sampai hampir garis akhir. Kami bisa mencetak enam gol di babak kedua," ujar Ferguson.
"Kami menciptakan banyak peluang, tetapi kami mengharapkan perlawanan sengit dan mendapatkannya."
"Saya berpikir kami brilian dan mengawali dengan fantastis. (Kiper Chelsea) Petr Cech melakukan dua penyelamatan fantastis, tetapi tadi adalah penampilan tim yang bagus."
"Kami terus menciptakan peluang dan Wayne Rooney berpeluang mencetak enam gol. Pendukung bersikap luar biasa dalam 10-15 menit terakhir ketika kami membutuhkan mereka. Sekarang kami hanya butuh satu angka," tuturnya. (MU)

Belajar MySQL


Perintah SELECT pada MysQL
Setelah anda sudah menguasai penggunaan MySQL Query Browser sebagai tempat ‘belajar’ bahasa SQL, di artikel ini saya ingin mendiskusikan dengan anda tentang perintah SELECT ini kemungkinan besar akan kita gunakan sebanyak sebesar 75% dari total kegiatan ber-SQL kita nanti. Dengan perintah SELECT inilah yang memungkinkan kita bisa melihat dan memanipulasi data-data table di MySQL server nantinya.
OK, langsung saja. Misal saja kita mempunyai 4 table yaitu:

1.tbl_master_pelanggan, yang terdiri dari field-field: kode_pelanggan, nama_pelanggan, alamat, kota, kode_pos, tanggal_masuk.
2.tbl_penjualan, yang terdiri dari field-field: kode_transaksi, tanggal_penjualan, kode_pelanggan, keterangan, modified_date, modified_by.
3.tbl_detail_penjualan, yang terdiri dari field-field: id_trans, kode_penjualan, kode_barang, jumlah, harga_jual, discount.
4.tbl_master_barang, yang terdiri dari field-field: kode_barang, nama_barang, satuan, min_stock, keterangan, lokasi_gambar.

Di sini kita akan membahas bagaimana menampilkan data dari table-table tersebut dengan menggunakan perintah SELECT. Untuk syntax perintah dasar SELECT sendiri sebagai berikut:
SELECT nama_kolom_1, nama_kolom_2 FROM nama_table;
Kasus 1, saya ingin menampilkan semua data master pelanggan yang terletak di table tbl_master_pelanggan, maka perintah yang saya ketik di Query Edit adalah sebagai berikut:
SELECT * FROM tbl_master_pelanggan;
Tapi jika saya hanya ingin menampilkan kolom nama_pelanggan dan alamat saja, ketik seperti ini:
SELECT nama_pelanggan, alamat FROM tbl_master_pelanggan;
Anda bisa melihat data dengan kriteria tertentu, untuk melakukan itu anda bisa menggunakan tambahan perintah WHERE. Misal anda ingin melihat nama barang (field: nama_barang) yang kata depannya cover, maka perintah yang harus anda ketik adalah sebagai berikut:
SELECT * FROM tbl_master_pelanggan WHERE nama_barang LIKE 'cover%'
Karena type data dari kolom nama_barang adalah VarChar maka anda harus menambahkan karakter petik tunggal (‘) di dalam keyword nya. Kalau type data-nya adalah integer dan type angka yang lainnya, petik tunggal tidak diperlukan. Untuk mencari semua karakter setelah nama barang cover, saya menggunakan tanda wildcard % supaya MySQL mencari semua data yang kata depannya cover. Dan jika anda menggunakan wil card character, operator yang anda gunakan adalah LIKE. Jika tidak anda bisa menggunakan operator sama dengan (=). Untuk manipulasi data angka anda bisa menggunakan operator <, >, =, BETWEEN, <=, >=.
Kasus 2, saya ingin menampilkan data 2 table yang saling berkaitan. Ini dalam ilmu-nya sering disebutan normalisasi. Dengan normalisasi anda tidak perlu menyimpan data nama-nama pelanggan di dalam transaksi penjualan, cukup kode pelanggan nya saja yang perlu anda simpan, hal ini juga untuk menghindari duplikasi. Untuk menghubungkan dua table atau lebih yang dihubungkan dengan satu kode transaksi yang sudah kita tentukan tadi kita akan menggunakan perintah INNER JOIN. Perlu diingat bahwa kode yang akan dipakai untuk normalisasi ini adalah kode transaksi yang tidak terdapat duplikasi data di dalamnya atau sering disebut primary key. Dalam contoh ini saya akan menghubungkan tabel penjualan dan detail item penjualan. Kalau di contoh table saya, menghubungkan table 2 dan 3. Perintah yang kita ketikkan adalah sebagai berikut:
SELECT tp.kode_transaksi, tp.tanggal_transaksi, tp.kode_pelanggan, tp, keterangan, dtp.kode_barang, dtp.jumlah, dtp.harga_jual, dtp.discount FROM tbl_penjualan AS tp INNER JOIN tbl_detail_penjualan AS dtp ON tp.kode_transaksi=dtp.kode_penjualan;
Dari contoh di atas bisa di lihat bahwa nama table bisa di alias-kan untuk memperpendek nama table, deklarasi alias bisa ditentukan di asal table setelah FROM. Untuk penggunaan INNER JOIN jika dilihat dari contoh tersebut juga sangatlah mudah, tinggal ketik table1 INNER JOIN table 2 ON kode_table1=kode_table2. Usahakan dalam syntax SQL yang menggunakan INNER JOIN sertakan juga alias-nya selain untuk memperpendek nama table, hal itu juga dapat menghindarkan kita dari ‘tabrakan’ nama field/kolom yang sama. Misalnya, table 1 mempunyai field kode_pelanggan dan table 2 juga mempunyai field kode_pelanggan dan jika anda tidak menyertakan aliasnya dengan format alias.nama_kolom, anda akan mendapat masalah di kemudian waktu.

Nah, sekarang saya akan menggabungkan 4 table yang saya perlihatkan diatas. Jika anda melihat dari 4 table tersebut makan korelasi-nya adalah tbl_penjualan dihubungkan dengan tbl_detail_penjualan, lalu 2 table tersebut dihubungkan dengan table tbl_master_pelanggan dan tbl_master_barang. Syntax yang akan saya tulis adalah sebagai berikut:
SELECT tp.kode_transaksi, tp.tanggal.transaksi, tp.kode_pelanggan, mp.nama_pelanggan, dtp.kode_barang, mb.nama_barang, dtp.jumlah, dtp.harga_jual, dtp.discount, (dtp.jumlah*dtp.harga_jual)-((dtp.jumlah*dtp.harga_jual)-discount) AS sub_total
FROM tbl_penjualan AS tp INNER JOIN tbl_detail_penjualan AS dtp ON tp.kode_transaksi=dtp.kode_penjualan
INNER JOIN tbl_master_pelanggan AS mp ON tp.kode_pelanggan=mp.kode_pelanggan
INNER JOIN tbl_master_barang AS mb ON dtp.kode_barang=mb.kode_barang;

Cukup mudah kan? Kita akan belajar lagi untuk perintah-perintah SQL yang lainnya.