Pilihan itu mewakili inner join dan outer join.
Jika anda punya tabel master customer dan tabel transaksi penjualan,
maka anda tentu ingin punya :
- rekapitulasi penjualan kepada customer
- daftar customer yang tidak pernah belanja ke kita dalam rentang waktu
tertentu.
untuk kasus pertama, anda bisa gunakan inner join (pilihan 1). Maka
query akan menampilkan customer dan penjualannya. HANYA Customer yang
pernah transaksi saja yang akan ditampilkan.
SELECT T.SONo, T.SODate, T.CustID, C.CustName
FROM M_CUSTOMER C
INNER JOIN T_TRANSAKSI T ON C.CustID = T.CustID
untuk kasus kedua, customer yang tidak pernah belanja ke kita dalam
suatu rentang waktu tertentu bisa gunakan outer join. Sekarang
penggunaan LEFT dan RIGHT nya hanya dari penempatan tabel master
customer sebelah kiri atau kanan.
SELECT T.SONo, T.SODate, T.CustID, C.CustName
*FROM M_CUSTOMER C
LEFT JOIN T_TRANSAKSI T *ON C.CustID = T.CustID*
*WHERE T.CustID IS NULL
AND T.SODate Between #1/1/2009# AND #12/31/2009#
atau
SELECT T.SONo, T.SODate, T.CustID, C.CustName
*FROM T_TRANSAKSI T
RIGHT JOIN M_CUSTOMER C *ON C.CustID = T.CustID
WHERE T.CustID IS NULL
AND T.SODate Between #1/1/2009# AND #12/31/2009#
aksan kurdin
On 3/22/2010 11:32 PM, Hendra Agestha Hamid wrote:
Dear Master2 Acc
Mohon diterangkan arti alternatif pilihan dari "join types" pada
relationship.
Misal saya me-relasi-kan field X pada Tabel DATA (prim key) ke field Y
Tabel TRANSAKSI
kalo gak salah akan ada 3 alternatif :
1.Only include rows .....
2.Include all records from 'T DATA' and only....
3.Include all records from 'T TRANSAKSI' and only....
Pada kasus seperti apa masing2 alternatif di atas diterapkan...?
Best Regards
Hendra