Kamis, 12 November 2015

TUGAS ORACLE 10G



Nama : Ahmad Hendrawan
NPM :1143003
Kelas :D3TI2B


1.Connect to Oracle, dengan format USER:system, PASSWORD:sesuai yang kita buat.
2.CREATE USER RumahSakit IDENTIFIED BY bebas123
3.Grant connect, resource to RumahSakit;
4.CREATE TABLE Dokter (
    KdDokter VARCHAR2(5)
     CONSTRAINT Dokter_pk PRIMARY KEY,
    NmDokter VARCHAR2(40) NOT NULL,
    Spesialisasi VARCHAR2 (2) NOT NULL,
    Golongan INTEGER NOT NULL,
        supervisor VARCHAR2(5)
);
kemudian akan muncul tabel created.
5.kemudian input,
   INSERT INTO Dokter (KdDokter, NmDokter, Spesialisasi, Golongan, Supervisor)
VALUES ('DR009', 'Opik','UM',3);


6. CREATE TABLE Pasien (
    KdPasien VARCHAR2(5)
     CONSTRAINT Pasien_pk PRIMARY KEY,
    NmPasien VARCHAR2(20) NOT NULL,
    JenKel VARCHAR2 (1) NOT NULL,
        Umur INTEGER NOT NULL
);
7.Lakukan penginputan
   INSERT INTO Pasien (KdPasien, NmPasien, JenKel, Umur)
VALUES ('PS010', 'Merry Resh','W',19);


8. CREATE TABLE TrKlinik (
  KdTransaksi VARCHAR2(5)
    CONSTRAINT TrKlinik_pk PRIMARY KEY,
  TglPeriksa DATE NOT NULL,
  KdDokter VARCHAR2(5)
  CONSTRAINT TrKlinik_fk_Dokter
    REFERENCES Dokter(KdDokter),
  KdPasien VARCHAR2(5)
    CONSTRAINT TrKlinik_fk_Pasien
    REFERENCES Pasien(KdPasien),
  Biaya INTEGER
);
9.Lakukan input lagi
   INSERT INTO TrKlinik (KdTransaksi, TglPeriksa, KdDokter, KdPasien, Biaya)
VALUES ('TR003', '10-DEC-2007', 'DR002','PS002',35000);


soal-soal
Buat query untuk menampilkan informasi sebagai

1.      Tampilkan kode dokter, nama dokter dan spesialisasi dari dokter yang memiliki golongan 2.
2.      Tampilkan data pasien anak-anak (umurnya dibawah atau sama dengan 12).
3.      Tampilkan pasien yang memiliki umur diantara 10 sampai dengan 25 diurutkan berdasarkan abjad yang terbesar (dari huruf Z sampai ke A).
4.      Berapa jumlah pasien berjenis kelamin W yang berumur diatas 15 tahun.
5.      Berapa jumlah pasien berjenis kelamin L yang berumur dibawah 17 tahun.
6.      Tampilkan kode pasien yang diperiksa tanggal 12/12/2007 diurutkan secara Descending.
7.      Hitung total biaya yang dibayarkan oleh pasien yang memiliki kode ‘PS002.
8.      Hitung total biaya yang dibayarkan oleh masing-masing pasien.
9.      Hitung rata-rata biaya yang diterima oleh masing-masing dokter.
  
jawab
1. select kddokter, nmdokter, spesialisasi, golongan
from dokter
where golongan=2;

2. select * from pasien
where umur<=12;


3.  select * from pasien
where umur between 10 and 25
order by nmpasien desc;

4. select count(*) from pasien
where jenkel='W' and umur>15;


5.  select count(*) from pasien
where jenkel='L' and umur<17;


6.  select kdpasien from trklinik
where tglperiksa='12-DEC-2007'
order by kdpasien desc;


7.  select sum(biaya) from trklinik
where kdpasien='PS002';


8. select kdpasien, sum(biaya) from trklinik
group by kdpasien;


9. select kddokter, avg(biaya) from trklinik
group by kddokter;



sekian dan terima kasih