Senin, 24 Oktober 2011

SQL pertemuan 6

Menggunakan Subquery untuk Memecahkan QueryQuery

Ø  Menggunakan suatu Subquery untuk Memecahkan suatu Persoalan
Misalkan Anda ingin menulis suatu query untuk mencari tahu penghasilan siapa yang lebih besar daripada penghasilan Abel. Untuk memecahkan masalah ini, Anda memerlukan dua query: satu query untuk mencari berapa banyak penghasilan Abel, dan query kedua untuk mencari penghasilan siapa yang lebih besar dari jumlah itu. Anda dapat memecahkan persoalan ini dengan menggabungkan dua query, menempatkan satu query di dalam query lain. Inner query (atau subquery) mengembalikan suatu nilai yang digunakan outer query (atau query utama). Penggunaan suatu subquery sama dengan penggunaan dua query berturut turut dan menggunakan hasil dari query pertama sebagai nilai pencari dalam query yang kedua.

Ø  Sintak Subquery
SELECT select_list
FROM table
WHERE expr operator (SELECT select_list FROM table);
Suatu subquery adalah suatu pernyataan SELECT yang dilekatkan didalam suatu klausa pada pernyataan SELECT lain. Anda dapat membangun pernyataan pernyataan yang kuat selain yang sederhana dengan menggunakan subquery subquery. Subquery subquery bisa sangat bermanfaat ketika Anda memerlukan untuk memilih baris baris dari suatu table dengan suatu kondisi yang tergantung pada data didalam tabel itu sendiri. Anda dapat menempatkan subquery didalam sejumlah klausa klausa SQL, termasuk berikut :
*      Klausa WHERE
*      Klausa HAVING
*      Klausa FROM
Didalam Syntax :
Operator termasuk suatu kondisi pembanding seperti >, =, atau IN
Catatan : Kondisi kondisi pembanding dibagi dalam dua kelas : singlerow operator (>,=,>=,<,<>,<=) dan multiplerow operator (IN, ANY, ALL). Subquery lebih dikenal sebagai suatu SELECT bersarang (nested), subSELECT, atau pernyataan inner SELECT. Secara umum subquery dieksekusi pertama kali, dan hasilnya digunakan untuk melengkapi kondisi query pada query utama (atau outer).

Ø  Pedoman Pedoman untuk Menggunakan Subquery
*      Suatu subquery harus diapit tanda kurung.
*      Tempatkan subquery disisi kanan dari kondisi pembanding agar mudah dibaca.
*      Pada Oracle8i dan keluaran keluaran berikutnya, suatu klausa ORDER BY bisa digunakan dan diperlukan dalam subquery untuk melakukan pemeringkatan (TopN analysis). Sebelumnya pada Oracle8i, bagaimanapun, subquery subquery tidak bisa memuat klausa ORDER BY.Klausa ORDER BY hanya sekali digunakan untuk suatu pernyataan SELECT; jika ditentukan, klausa ORDER BY berada diakhir pada pernyataan SELECT utama.
*      Dua kelas dari kondisi kondisi pembanding digunakan dalam subquery subquery: singlerow operator dan multiplerow operator.

Ø  Tipe Tipe dari Subquery
*      Singlerow subquery: Query yang mengembalikan hanya satu baris dari pernyataan inner SELECT (SELECT terdalam).
*      Multiplerow subquery: Query yang mengembalikan lebih dari satu baris dari pernyataan inner SELECT.

Ø  Single Row Subqueries
Suatu singlerow subquery adalah mengembalikan satu baris dari pernyataan inner SELECT. Tipe dari subquery ini menggunakan suatu singlerow operator. Pada slide diberikan suatu daftar dari operator operator singlerow.
Contoh
Tampilkan pegawai pegawai yang job IDnya sama dengan pegawai 141:
SELECT last_name, job_id
FROM employees
WHERE job_id = (SELECT job_id FROM employees WHERE employee_id = 141 );

Ø  Menggunakan Grup Function dalam suatu Subquery
Anda bisa menampilkan data dari suatu query utama dengan menggunakan grup function didalam subquery untuk mengembalikan suatu baris tunggal. Subquery berada dalam tanda kurung dan diletakkan setelah kondisi pembanding.
Contoh :
SELECT last_name, job_id, salary
FROM employees
WHERE salary = (SELECT MIN(salary) FROM employees);
Contoh tersebut menampilkan nama belakang pegawai, job ID, dan penghasilan seluruh pegawai yang penghasilannya sama dengan penghasilan minimum. Group function MIN mengembalikan suatu nilai tunggal (2500) untuk outer query.

Ø  Klausa HAVING dengan Subquery
Anda dapat menggunakan subquery subquery tidak hanya pada klausa WHERE tapi bisa juga pada klausa HAVING. Server Oracle mengeksekusi subquery, dan hasilnya dikembalikan ke dalam klausa HAVING pada query utama.

Ø  Kesalahan Kesalahan pada Subquery Subquery
Satu kesalahan umum pada subquery terjadi ketika lebih dari satu baris dikembalikan untuk suatu singlerow subquery.
SELECT employee_id, last_name
FROM employees
WHERE salary = (SELECT MIN(salary) FROM employees GROUP BY department_id);
Pada pernyataan SQL diatas, subquery berisi suatu klausa GROUP BY, yang berakibat subquery itu akan mengembalikan banyak baris, satu dari setiap kelompok yang ditemukannya. Dalam kasus ini, hasil dari subquery adalah 4400, 6000, 2500, 4200, 7000, 17000, dan 8300. Outer query mengambil hasil hasil itu dan menggunakannya pada klausa WHERE. Klausa WHERE berisi suatu operator samadengan ( = ), suatu operator pembanding singlerow yang dikira hanya satu nilai. Operator = tidak menerima lebih dari satu nilai dari subquery dan oleh karena itu menghasilkan kesalahan. Untuk memperbaiki kesalahan ini, rubah operator = menjadi IN.

Ø  Multiple Row Subqueries
Subquery subquery yang mengembalikan lebih dari satu baris disebut multiplerow
subqueries. Anda menggunakan suatu multiplerow operator, disamping suatu singlerow operator, pada suatu miltiplerow subquery. Multiplerow operator memperkirakan satu atau lebih nilai nilai :
Contoh
Cari pegawai pegawai yang mendapat penghasilan yang sama dengan penghasilan minimum untuk setiap departemen. Inner query dieksekusi pertama kali, menghasilkan suatu hasil query. Blok query utama kemudian memproses dan menggunakan nilai nilai yang dikembalikan oleh inner query untuk melengkapi kondisi pencariannya. Sesungguhnya, query utama tampak pada server Oracle sebagai berikut:
SELECT last_name, salary, department_id
FROM employess
WHERE salary IN (2500, 4200, 6000, 7000, 800, 8600, 17000);

Perilaku Dalam Berorganisasi pertemuan 5


..::PERILAKU BERKELOMPOK & KOMUNIKASI::..

KELOMPOK
     “Kumpulan yang terdiri dari dua individu atau lebih yang berinteraksi dan saling bergantungan, yang saling bergabung untuk mencapai tujuan tertentu”. Source: Gibson

TIPE KELOMPOK
1.  Kelompok formal
- Suatu kelompok kerja yang ditandai dengan struktur organisasi, aturan, fungsi dan lain-lain
a.  Kelompok Komando (command group) =>  Kelompok yang tersusun oleh atasan dan bawahan dan ditentukan oleh bagan organisasi
b.  Kelompok Tugas (task group) => Kelompok yang ditetapkan secara organisasional yang    bekerja sama untuk menyelesaikan suatu tugas
2. Kelompok informal
- Suatu kelompok yang tidak terstruktur secara formal atau tidak ditetapkan secara organisasi, terdiri dari dua tipe yaitu :
a.  Kelompok Kepentingan (interest group) Kelompok yang bekerja sama untuk mencapai  suatu sasaran khusus yang menjadi kepedulian bersama
b.  Kelompok Persahabatan (friendship group) Kelompok yang bersama-sama karena mempunyai kesamaan karakter

ALASAN BERKELOMPOK
*      Keamanan
*      Status
*      Harga diri
*      Afiliasi/pertalian
*      Kekuasaan
*      Pencapaian Tujuan
TAHAP PERKEMBANGAN KELOMPOK
*       Model 5 Tahap Pembentukan/forming 
Keributan/storming
Penormaan/norming 
Pelaksanaan/performing
Penundaan/adjourning
KESUKSESAN KELOMPOK
*      Kondisi Internal
Kemampuan anggotanya
Ukuran kelompok
Tingkat konflik
Tekanan informal pd anggota kelompok
*      Kondisi Eksternal
KONDISI EKSTERNAL KELOMPOK
1. Strategi organisasi
2. Struktur wewenang/otoritas
3. Aturan formal
4. Sumber daya organisasi
5. Proses seleksi
6. Penilaian prestasi dan sistem imbalan
7. Budaya organisasi
8. Kondisi kerja
STRUKTUR KELOMPOK
*      Kepemimpinan formal
*      Peran seperangkat pola perilaku yg diharapkan dr seseorang yg menduduki posisi tertentu dalam unit sosial tertentu
Identitas peran: sikap & perilaku yg konsisten dengan perannya dalam kelompok
Persepsi peran: cara pandang ttg perilaku yg diharapkan dilakukan pada situasi tertentu
 Pengharapan peran: perilaku yg diharapkan oleh org lain agar seseorang melakukannya dlm situasi tertentu
Konflik peran: situasi dimana individu dihadapkan pd pengharapan peran yg bertentangan
ü   
PROSES KELOMPOK :
*      Sinergi
*      Efek fasilitas sosial

Tugas Kelompok :
*      Kompleks => membutuhkan informasi yg lengkap, tidak bersifat rutin
*      Sederhana => rutin, memiliki kejelasan prosedur

PENGAMBILAN KEPUTUSAN KELOMPOK
COMMUNICATION
*      Process of transmitting meaningful symbols between individual < William Albig >
*      Process of passing information and understanding from one person to another < Keith Davis >
*      Adalah proses pengiriman ide atau pikiran, dari satu orang kepada orang lain dengan tujuan untuk menciptakan pengertian dalam diri orang yang menerimanya ( C.A.Brown)

KOMUNIKASI SULIT ??
*      HETEROGEN PEOPLE
 BEDA LATAR BELAKANG
BEDA TINGKAT PENDIDIKAN
BEDA PENGALAMAN / PARADIGMA
BEDA PEKERJAAN, KEBUTUHAN
BEDA KEDUDUKAN
BEDA GAYA …..dsb.

FUNGSI KOMUNIKASI
*      fungsi kontrol : pengendali perilaku
*      fungsi motivasi : faktor meningkatkan motivasi
*      fungsi ekspresi perasaan : penyampai perasaan kepada orang lain
*      fungsi informasi : penyampai data /informasi, lebih lanjut berguna untuk pengambilan keputusan

PROSES KOMUNIKASI

ARAH KOMUNIKASI
*      Komunikasi vertikal
*      Komunikasi ke bawah (memberi pengarahan, informasi, instruksi, dll)
*      Komunikasi keatas (suplai informasi yang terjadi di tk.bawah: laporan periodik, penjelasan, gagasan, dll)
*      Komunikasi Lateral/Horizontal
*      Komunikasi antara anggota dlm kel. yg sama
*      Komunikasi antara departemen pd tingkatan organisasi yg sama
*      Bersifat koordinatif
*      Komunikasi Diagonal

KOMUNIKASI FORMAL & INFORMAL
*      Formal
*      Dikendalikan oleh manajemen
*      Kadang-kadang menghambat proses komunikasi
*      Sebagian besar digunakan dlm penyelesaian tugas
*      Informal
*      Tidak dikendalikan oleh manajemen
*      Mudah diterima
*      Digunakan untuk menjalin hubungan lebih erat

HAMBATAN KOMUNIKASI EFEKTIF
*      Hambatan-hambatan organisasional
*      Tingkatan hierarki
*      Wewenang manajerial
*      Spesialisasi
*      Hambatan-hambatan antar pribadi
*      Persepsi selektif
*      Status/kedudukan komunikator
*      Keadaan membela diri
*      Pendengaran lemah
*      Ketidaktepatan penggunaan bahasa