Sei sulla pagina 1di 3

CREATE TABLE SUBJEK_PAJAK

(
SUBJEK_PAJAK_ID CHAR(2) NOT NULL PRIMARY KEY,
NM_WP VARCHAR(30) NOT NULL,
KELURAHAN_WP VARCHAR(30) NOT NULL,
STATUS_PEKERJAAN_WP CHAR(1) NOT NULL
);

CREATE TABLE REF_KECAMATAN


(
KD_KECAMATAN CHAR(3) NOT NULL,
NM_KECAMATAN VARCHAR(30) NOT NULL,
PRIMARY KEY (KD_KECAMATAN)
);

CREATE TABLE OBJEK_PAJAK


(
OBJEK_PAJAK_ID CHAR(3) NOT NULL PRIMARY KEY,
KD_KECAMATAN CHAR(3) NOT NULL,
SUBJEK_PAJAK_ID CHAR(30) NOT NULL,
NJOP_BUMI FLOAt(15,2) NOT NULL,
NJOP_BNG float(15,2) DEFAULT 0,
FOREIGN KEY (SUBJEK_PAJAK_ID) REFERENCES SUBJEK_PAJAK (SUBJEK_PAJAK_ID),
FOREIGN KEY (KD_KECAMATAN) REFERENCES REF_KECAMATAN (KD_KECAMATAN)
);

INSERT INTO subjek_pajak VALUES ('1', 'Ali Rahmadi', 'Jurangmangu Timur', '1');
INSERT INTO subjek_pajak VALUES ('2', 'Budi Yuwono', 'Jurangmangu Barat', '2');
INSERT INTO subjek_pajak VALUES ('3', 'Catur Wijaya', 'Jurangmangu Timur', '3');
INSERT INTO subjek_pajak VALUES ('4', 'Dharmawan', 'Pondok Ranji', '4');
INSERT INTO subjek_pajak VALUES ('5', 'Elsa Nasution', 'Ciputat Timur', '1');
INSERT INTO subjek_pajak VALUES ('6', 'Fahri Hamzah', 'Pondok Ranji', '2');
INSERT INTO subjek_pajak VALUES ('7', 'Gunadi Santoso', 'Serpong Timur', '3');
INSERT INTO subjek_pajak VALUES ('8', 'Harun Alrasyid', 'Serpong Barat', '4');
INSERT INTO subjek_pajak VALUES ('9', 'Indrawati', 'Serpong Timur', '5');

INSERT INTO ref_kecamatan VALUES ('001', 'Pondok Aren');


INSERT INTO ref_kecamatan VALUES ('002', 'Ciputat');
INSERT INTO ref_kecamatan VALUES ('003', 'Serpong');

INSERT INTO objek_pajak VALUES ('1', '001', '1', 1100000000, NULL);


INSERT INTO objek_pajak VALUES ('2', '002', '1', 100000000, 400000000);
INSERT INTO objek_pajak VALUES ('3', '003', '2', 500000000, 450000000);
INSERT INTO objek_pajak VALUES ('4', '002', '4', 2100000000, NULL);
INSERT INTO objek_pajak VALUES ('5', '003', '4', 200000000, 300000000);
INSERT INTO objek_pajak VALUES ('6', '001', '5', 600000000, 350000000);
INSERT INTO objek_pajak VALUES ('7', '003', '7', 3100000000, NULL);
INSERT INTO objek_pajak VALUES ('8', '002', '7', 300000000, 200000000);
INSERT INTO objek_pajak VALUES ('9', '001', '8', 700000000, 250000000);

SELECT objek_pajak_id AS NOP, subjek_pajak_id, njop_bumi


FROM objek_pajak
WHERE njop_bumi>1000000000 AND njop_bng IS NULL;

SELECT objek_pajak_id, njop_bumi, ifnull(njop_bng,0) AS njop_bangunan


FROM objek_pajak;

SELECT MAX(njop_bumi) AS maksimum, MIN(njop_bumi) AS minimum, SUM(njop_bumi) AS


minimum, AVG(njop_bumi) AS rata2
FROM objek_pajak;

SELECT kelurahan_wp, COUNT(*) AS jumlah_subjek_pajak


FROM subjek_pajak
GROUP BY kelurahan_wp;

SELECT objek_pajak_id, njop_bumi


FROM objek_pajak
WHERE kd_kecamatan ='001';

SELECT objek_pajak_id, njop_bumi


FROM objek_pajak
WHERE kd_kecamatan = (SELECT kd_kecamatan FROM ref_kecamatan WHERE
nm_kecamatan='Pondok Aren');

SELECT objek_pajak_id, njop_bumi


FROM objek_pajak
WHERE kd_kecamatan IN (SELECT kd_kecamatan FROM ref_kecamatan WHERE
nm_kecamatan='Pondok Aren' OR nm_kecamatan='Ciputat');

SELECT nm_wp, objek_pajak_id, nm_kecamatan, njop_bumi


FROM subjek_pajak s, objek_pajak o, ref_kecamatan k
WHERE s.subjek_pajak_id=o.subjek_pajak_id AND o.kd_kecamatan=k.kd_kecamatan;

SELECT subjek_pajak_id, nm_wp, objek_pajak_id


FROM subjek_pajak LEFT OUTER JOIN objek_pajak
ON (subjek_pajak.subjek_pajak_id = objek_pajak.subjek_pajak_id);

SELECT subjek_pajak_id, nm_wp, status_pekerjaan_wp,


CASE status_pekerjaan_wp WHEN '1' THEN 'PNS'
WHEN '2' THEN 'TNI/POLRI'
WHEN '3' THEN 'Pensiunan'
WHEN '4' THEN 'Badan'
ELSE 'Lainnya' END pekerjaan
FROM subjek_pajak;

SELECT s.subjek_pajak_id, nm_wp, IFNULL(COUNT(objek_pajak_id),0) AS


jumlah_objek_pajak
FROM subjek_pajak s LEFT OUTER JOIN objek_pajak o ON
(s.subjek_pajak_id=o.subjek_pajak_id)
GROUP BY s.subjek_pajak_id, nm_wp
ORDER BY nm_wp;

SELECT nm_wp, kelurahan_wp


FROM subjek_pajak
WHERE subjek_pajak_id IN (SELECT subjek_pajak_id
FROM objek_pajak
WHERE kd_kecamatan IN ( SELECT kd_kecamatan
FROM ref_kecamatan
WHERE nm_kecamatan='Pondok Aren'));

SELECT nm_wp, kelurahan_wp


FROM subjek_pajak
WHERE subjek_pajak_id IN (SELECT subjek_pajak_id
FROM objek_pajak
WHERE kd_kecamatan IN ( SELECT kd_kecamatan
FROM ref_kecamatan
WHERE nm_kecamatan='Ciputat'));

SELECT nm_wp, kelurahan_wp


FROM subjek_pajak
WHERE subjek_pajak_id IN (SELECT subjek_pajak_id
FROM objek_pajak
WHERE kd_kecamatan IN ( SELECT kd_kecamatan
FROM ref_kecamatan
WHERE nm_kecamatan='Serpong'));

Potrebbero piacerti anche