Dear Mang Oyib,

berikut ini saya sekali iseng coba2...

DROP TABLE karyawan purge 

CREATE TABLE karyawan(ID_CODE VARCHAR2(3), NAMA_ANGGOTA VARCHAR2(30), TTL 
DATE, ALAMAT VARCHAR2(30),  MASA_KERJA NUMBER,CODE_BAGIAN VARCHAR2(2),
PRIMARY KEY( id_code));

INSERT INTO karyawan 
VALUES('100','RAHMAT','01-JAN-1976','RAWAMANGUN',3,'2A');

INSERT INTO karyawan VALUES('101','UDIN', '03-NOV-1978', 'JAPATI', 
2,'2B');

INSERT INTO karyawan VALUES('102', 'BUDI', '15-APR-1980', 'LOMBOK', 5, 
'3B');

INSERT INTO karyawan VALUES('103', 'WAWAN', '08-SEP-1975', 'SETIABUDI', 
6,'3A');

CREATE TABLE BAGIAN(CODE_BAGIAN VARCHAR2(2),NAMA_BAGIAN 
VARCHAR2(25),TIPE_BAGIAN VARCHAR2(25), KODE_DEPT VARCHAR2(1),PRIMARY 
KEY(code_bagian));

INSERT INTO bagian VALUES('0','PT. KURNIA', 'PERS','-');

INSERT INTO bagian VALUES('1','DIREKTUR', 'DIR', '0');

INSERT INTO bagian VALUES('2', 'DEPT. MARKETING','DEPT','1');

INSERT INTO bagian VALUES('2A', 'SALES', 'BAG', '2');

INSERT INTO bagian VALUES('2B', 'PROMOSI','BAG', '2');

INSERT INTO bagian VALUES('3', 'PRODUKSI', 'DEPT', '1');

INSERT INTO bagian VALUES('3A', 'PROD. TV', 'BAG', '3');

INSERT INTO bagian VALUES('3B', 'PROD. AC', 'BAG', '3');

DROP TABLE izin_keluar purge

CREATE TABLE IZIN_KELUAR(ID_CODE VARCHAR2(3),TGL_IZIN DATE, LAMA_IZIN 
NUMBER,PRIMARY KEY(id_code,tgl_izin));

INSERT INTO izin_keluar VALUES('100','01-APR-2009',2);

INSERT INTO izin_keluar VALUES('100','02-APR-2009',5);

INSERT INTO izin_keluar VALUES('101','05-APR-2009',1.5);

INSERT INTO izin_keluar VALUES('100','10-APR-2009', 1);

INSERT INTO izin_keluar VALUES('102','11-APR-2009', 3);

INSERT INTO izin_keluar VALUES('103','12-APR-2009', 5);

INSERT INTO izin_keluar VALUES('102','20-APR-2009', 2);


ini querynya

SELECT * FROM(
 SELECT a.id_code, a.tgl_izin, b.code_bagian, ROW_NUMBER() over (ORDER BY 
a.lama_izin DESC, b.MASA_KERJA)no
FROM izin_keluar a, karyawan b
WHERE a.id_code=b.id_code)
WHERE no=1

salam,
adhi




Kang Oyib <[email protected]> 
Sent by: [email protected]
04/05/2009 11:25
Please respond to
[email protected]


To
[email protected]
cc

Subject
Re: [indo-oracle] Select Max Condition








Bagaimana cara penggunaan Having MAX yg valuesnya belum diketahui....?

Biasanya HAVING MAX(sum(ik.lama_izin)) = (harus ada valuenya)

Kalau menggunakan MAX(sum(ik.lama_izin)) seperti berikut :

SELECT 
ik.id_code,ky.code_bagian,TO_CHAR(ik.tgl_izin,'MM-RRRR'),MAX(sum(ik.lama_izin))
FROM izin_keluar ik,
karyawan ky,
bagian bg
WHERE ky.id_code = ik.id_code
AND bg.code_bagian = ky.code_bagian
GROUP BY ik.id_code,ky.code_bagian,TO_CHAR(ik.tgl_izin,'MM-RRRR')

keluar error groupingnya.........

Ada solusi lain dari rekan sekalian...?



[Non-text portions of this message have been removed]

Kirim email ke