Thanks Mr.Kid. Salam, HK
Sent from Samsung Mobile"'Mr. Kid' [email protected] [belajar-excel]" <[email protected]> wrote:Kalau membuat agregat per group kan harus menampilkan koloms key penyusun group nya. Coba deh apa arti angka berikut : 15 200 170 apakah bisa disimpulkan sama dengan : si A 15 si B 200 si C 170 dari data si A 15 si B 50 si C 100 si B 150 si C 70 ? jadi, Select Sum(b.Qty_Beli) As Beli From [Beli$] As b Group By b.Nama_Brg -> tidak logis karena menghilangkan makna data Select b.Nama_Brg , Sum(b.Qty_Beli) As Beli From [Beli$] As b Group By b.Nama_Brg -> jika agregat per group, maka logisnya ada informasi penyusun grup nya Join selain cross join itu bisa agak mirip disebut lookup. tapi kunci-kunci lookup nya disebutkan. Kalau ada tabel A berisi kolom Nama dan Usia, apakah logis untuk dijoin dengan tabel B yang berisi kolom Gaji saja ? apakah logis lookup berdasar kolom nama harus sama dengan gaji ? Tentu lebih logis jika kolom B juga punya kolom yang berisi nama-nama (misal kolom bernama Nama_Karyawan), sehingga lookup bisa dilakukan berdasar kolom Nama di tabel A harus sama dengan kolom Nama_Karyawan di tabel B. Silakan dipelajari lagi logika dasar dari klausa query dasar seperti SELECT, FROM, JOIN, WHERE, GROUP BY, HAVING, UNIOM [ALL] terutama konsep bekerja berbasis object kolom bukan posisi suatu record pada sebuah tabel (excel mengandalkan posisi suatu record dengan cara merujuk alamat cell yang tidak berlaku di logika dasar query). Wassalam, Kid. 2014-07-06 15:40 GMT+07:00 hendrik karnadi [email protected] [belajar-excel] <[email protected]>: Terima kasih Mr. Kid atas jawabannya. Hasil percobaaan saya atas file terlampir adalah sbb: Jika Statement ini dijalankan sendiri2 maka hasilnya akan tampak (OK) Select s.Nama_Brg, s.Qty_Awal As Awal From [Stok$] As s (Select Sum(b.Qty_Beli) As Beli From [Beli$] As b Group By b.Nama_Brg) (Select Sum(j.Qty_Jual) As Jual From [Jual$] As j Group By j.Nama_Brg) tetapi jika digabungkan (dengan tambahan warna merah) seperti ini: Select s.Nama_Brg, s.Qty_Awal As Awal From ([Stok$] As s Left Outer Join (Select Sum(b.Qty_Beli) As Beli From [Beli$] As b Group By b.Nama_Brg) On s.Nama_Brg = b.Nama_Brg) Left Outer Join (Select Sum(j.Qty_Jual) As Jual From [Jual$] As j Group By j.Nama_Brg) On s.Nama_Brg = j.Nama_Brg maka akan tampak Error Message : " Could not add the tabel '([Stock$]' " Pertanyaan saya, dimana letak kesalahan Statement atau tanda bacanya ? Terima kasih. Salam, HK On Saturday, 5 July 2014, 23:12, "'Mr. Kid' [email protected] [belajar-excel]" <[email protected]> wrote: from stok left outer join (select dari beli yang digroup by n sum) left outer join jual Wassalam, Kid. 2014-07-02 16:52 GMT+07:00 hendrik karnadi [email protected] [belajar-excel] <[email protected]>: Dear Be-Excellers. Saya memepunyai Workbook yang terdiri dari 3 Sheet , yaitu : - Sheet STOK, yang terdiri dari 3 kolom, yaitu TGL, NAMA_BRG, QTY_AWAL - Sheet BELI, yang terdiri dari 5 kolom, yaitu TGL, NAMA_BRG, QTY_BELI, HRG_BELI dan TTL_BELI - Sheet JUAL, yang terdiri dari 5 kolom, yaitu TGL, NAMA_BRG, QTY_JUAL, HRG_JUAL dan TTL_JUAL Ketiga sheet tersebut dimulai dari sel A1. Saya ingin menggabungkan ketiga sheet tersebut dengan menggunakan SQL Statement, melalui DATA, GET EXTERNAL DATA.... EXCEL FILES*. SQL Statementsnya adalah sbb : SELECT FROM .... LEFT OUTER JOIN ......LEFT OUTER JOIN.... GROUP BY Namun hasilnya, kolom AWAL (QTY_AWAL) dan JUAL (QTY_JUAL) jumlahnya tidak sesuai harapan. Mohon bantuannya.... Terima kasih. Salam, HK

