Sunteți pe pagina 1din 24

Individual Assignment #2

Name: Cefriandy Simarmata


ID:001201500007
1. CefLibrary
Create table query:
create table Student (
STU_NUM VARCHAR(20),
STU_NAME VARCHAR(100),
CONSTRAINT StudentPK PRIMARY KEY(STU_NUM)
)

create table BOOK (


BOOK_CODE VARCHAR(20),
BOOK _NAME VARCHAR(100),
BT_CODE VARCHAR(20),
CONSTRAINT BOOKPK PRIMARY KEY(BOOK _CODE),
CONSTRAINT BOOKFK FOREIGN KEY(BT_CODE) REFERENCES BOOK_TYPE
)

CREATE TABLE BOOK_TYPE (


BT_CODE VARCHAR(20),
BT_NAME VARCHAR(100),
CONSTRAINT BtypePK PRIMARY KEY(BT_CODE)
)

CREATE TABLE Borrow (


BORROW_CODE VARCHAR(20),
START_DATE DATE,
END_DATE DATE,
BOOK_CODE VARCHAR(20),
STU_NUM VARCHAR(20),
CONSTRAINT BorrowPK PRIMARY KEY(BORROW_CODE),
CONSTRAINT BorrowFK FOREIGN KEY(BOOK_CODE) REFERENCES BOOK,
CONSTRAINT Borrow2FK FOREIGN KEY(STU_NUM) REFERENCES Student

2. CefResidentReg
Create table query:

create table BIODATA (

NIK VARCHAR(20),

NAMA_LGKP VARCHAR(50),

JENIS_KLMN VARCHAR(10),

TMPT_LHR VARCHAR(20),

GOL_DARAH VARCHAR(5),

NO_KK VARCHAR(20),

NO_AKTA_LHR VARCHAR(20),

AGAMA_NUM VARCHAR(20),

PDDK_NUM VARCHAR(20),

PKJ_NUM VARCHAR(20),

STATUS_NUM VARCHAR(20),

CONSTRAINT BIODATAPK PRIMARY KEY(NIK),

CONSTRAINT BIODATAFK FOREIGN KEY(NO_KK) REFERENCES KARTU_KELUARGA,

CONSTRAINT BIODATAFK2 FOREIGN KEY(NO_AKTA_LHR) REFERENCES AKTA_LAHIR,

CONSTRAINT BIODATAFK3 FOREIGN KEY(AGAMA_NUM) REFERENCES AGAMA,

CONSTRAINT BIODATAFK4 FOREIGN KEY(PDDK_NUM) REFERENCES PENDIDIKAN,

CONSTRAINT BIODATAFK5 FOREIGN KEY(PKJ_NUM) REFERENCES PEKERJAAN,

CONSTRAINT BIODATAFK6 FOREIGN KEY(STATUS_NUM) REFERENCES STATUS

create table KTP (

NO_KTP VARCHAR(20),
NIK VARCHAR(20),

TGL_CETAK_KTP DATE,

CREATED_BY VARCHAR(20),

MODIFIED_BY VARCHAR(20),

EKTP_NUM VARCHAR(20),

CONSTRAINT KTPPK PRIMARY KEY(NO_KTP),

CONSTRAINT KTPFK FOREIGN KEY(NIK) REFERENCES BIODATA,

CONSTRAINT KTPFK2 FOREIGN KEY(EKTP_NUM) REFERENCES EKTP

CREATE TABLE EKTP (

EKTP_NUM VARCHAR(20),

EKTP_CREATED_DATE DATE,

EKTP_CREATED_BY VARCHAR(20),

EKTP_UPDATED_DATE DATE,

EKTP_UPDATED_BY VARCHAR(20),

EKTP_UPLOAD_LOCATION VARCHAR(20),

EKTP_BATCH VARCHAR(20),

CONSTRAINT EKTPPK PRIMARY KEY(EKTP_NUM)

CREATE TABLE AGAMA (

AGAMA_NUM VARCHAR(20),

AGAMA VARCHAR(20),

KET_AGAMA VARCHAR(20),

DESC_KEPERCAYAAN VARCHAR(20),

CONSTRAINT AGAMAPK PRIMARY KEY(AGAMA _NUM)

CREATE TABLE AKTA_LAHIR (

NO_ AKTA_LHR VARCHAR(20),

AKTA_LHR VARCHAR(20),

CONSTRAINT AKTAPK PRIMARY KEY(NO_AKTA_LHR)


)

CREATE TABLE PROV (

NO_ PROP VARCHAR(20),

PROP_NAME VARCHAR(20),

CONSTRAINT PROVPK PRIMARY KEY(NO_ PROV)

CREATE TABLE KAB (

NO_KAB VARCHAR(20),

KAB_NAME VARCHAR(20),

NO_PROV VARCHAR(20),

CONSTRAINT KABPK PRIMARY KEY(NO_ KAB),

CONSTRAINT KABFK FOREIGN KEY(NO_ PROV) REFERENCES PROV

CREATE TABLE KEC (

NO_KEC VARCHAR(20),

KEC_NAME VARCHAR(20),

NO_KAB VARCHAR(20),

CONSTRAINT KECPK PRIMARY KEY(NO_ KEC),

CONSTRAINT KECFK FOREIGN KEY(NO_ KAB) REFERENCES KAB

CREATE TABLE KEL (

NO_ KEL VARCHAR(20),

KEL_NAME VARCHAR(20),

NO_ KEC VARCHAR(20),

CONSTRAINT KelurahanPK PRIMARY KEY(NO_ KEL),

CONSTRAINT KelurahanFK FOREIGN KEY(NO_ KEC) REFERENCES KEC

)
CREATE TABLE ALAMAT (

NO_KEL VARCHAR(20),

AlAMAT_ID VARCHAR(20),

CONSTRAINT ALAMATPK PRIMARY KEY(AlAMAT_ID),

CONSTRAINT ALAMATFK FOREIGN KEY(NO_ KEL) REFERENCES KEL

CREATE TABLE PENDIDIKAN (

PDDK_NUM VARCHAR(20),

GLR_AKADEMIS VARCHAR(20),

CONSTRAINT PENDIDIKANPK PRIMARY KEY(PDDK_ID)

CREATE TABLE PEKERJAAN (

PKJ_NUM VARCHAR(20),

DESC_PKRJ VARCHAR(20),

JENIS_PKRJ VARCHAR(20),

CONSTRAINT PEKERJAANPK PRIMARY KEY(PKJ_NUM)

CREATE TABLE STATUS (

STATUS_NUM VARCHAR(20),

TGL_KAWIN VARCHAR(20),

NO_AKTA_KWN VARCHAR(20),

CONSTRAINT STATUSPK PRIMARY KEY(STATUS_NUM)

CREATE TABLE KARTU_KELUARGA (

NO_KK VARCHAR(20),

NIK_AYAH VARCHAR(20),

NIK_IBU VARCHAR(20),

STAT_HUB_KEL VARCHAR(20),
ALAMAT_NUM VARCHAR(20),

CONSTRAINT KARTU_KELUARGAPK PRIMARY KEY(NO_KK),

CONSTRAINT KARTU_KELUARGAFK FOREIGN KEY(AlAMAT_ID) REFERENCES ALAMAT

)
Assignment Query:

1. SELECT * FROM tablename (choose any table that has numeric value. If you do not have it
please add a new attibute that has numeric value);

select * from BOOK

select * from biodata

2. Update a value in the table where the table has numeric value (UPDATE tablename SET
columnname = expression WHERE conditionlist);

UPDATE book set price = 100 where BOOK_ID = 3


UPDATE biodata set salary = 8500 where NIK = 102

3. SELECT * FROM tablename (the table that you have updated any value);

Select * from book

Select * from biodata

4. SELECT * FROM tablename using WHERE conditionlist using AND;

select * from BOOK where book_id=3 And BTYPE_ID=4


select * from biodata where JENIS_KLMIN = 'Laki-laki' and TMPT_LHR ='Medan'

5. SELECT * FROM tablename using WHERE conditionlist using OR;

select * from BOOK where book_id=2 OR BTYPE_ID=3

select * from biodata where JENIS_KLMIN = 'Laki-laki' or


JENIS_KLMIN='Perempuan'
6. SELECT * FROM tablename using WHERE conditionlist using NOT;

select * from BOOK where not book_id=3

select * from biodata where not JENIS_KLMIN = 'Laki-laki'

7. SELECT * FROM tablename using WHERE conditionlist using LIKE with 4 conditions of an
attribute’s consist of name data (example for name of SMITH will be SMITH%, %SMITH%,
%SMITH, and SMITH);

select * from book where BOOK_NAME like 'Adam'


select * from book where BOOK_NAME like 'Adam%'
select * from book where BOOK_NAME like '%Adam%'
select * from book where BOOK_NAME like '%Adam'
select * from biodata where NAMA_LGKP like 'Benny'
select * from biodata where NAMA_LGKP like 'Benny%'
select * from biodata where NAMA_LGKP like '%Benny%'
select * from biodata where NAMA_LGKP like '%Benny'
8. Use SQL function COUNT to count the total number of records in 2 of your tables SUM, AVE,
MAX, MIN and GOUP BY commands for the tables;

select count(book_id) as bookCount from book


select count(Borrow_ID) as borrowCount from borrow

select count(nik) as bioCount from biodata


select count(AGAMA_ID) as agamaCount from agama
9. Use SQL function SUM to calculate the total value of an attribute in 1 of your tables;
select sum(price) as sumPrice from book

select sum(salary) as sumSalary from biodata

10. Use SQL function AVE to calculate the average value of an attribute in 1 of your tables;

select AVG(price) as avgPrice from book

select AVG(salary) as avgSalary from biodata


11. Use SQL function MAX to find the highest value of an attribute in 1 of your tables;

select Max(price) as maxPrice from book

select Max(salary) as maxSalary from biodata

12. Use SQL function MIN to find the lowest value of an attribute in 1 of your tables;

select Min(price) as minPrice from book

select Min(salary) as minSalary from biodata


13. Use SQL function GROUP BY to find the group value of an attribute in 1 of your tables;

select count(BTYPE_ID) as num,BTYPE_ID from book group by BTYPE_ID

select count(jenis_klmin)as num,JENIS_KLMIN from biodata group by


JENIS_KLMIN

14. Perform Cartesian Product of 2 tables;

SELECT BOOK_ID,Stu_id FROM book CROSS JOIN Student


SELECT NAMA_LGKP,alamat_id FROM Biodata CROSS JOIN ALAMAT

15. Perform Natural Join of 2 tables;


In sql server cannot do natural join
https://stackoverflow.com/questions/4826613/natural-join-in-sql-server
SELECT * FROM Book NATURAL JOIN Book_Type;
Select * from Alamat Natural Join Kelurahan;

16. Perform Natural Join of 3 tables;


In sql server cannot do natural join
https://stackoverflow.com/questions/4826613/natural-join-in-sql-server

SELECT * FROM Book NATURAL JOIN Book_Type


Natural join Borrow;
Select * from Alamat Natural Join Kelurahan
Natural Join Kecamatan;

17. Perform Left Outer Join of 2 tables;


SELECT book_name,BTYPE_NAME
FROM book
LEFT outer JOIN BOOK_TYPE ON book.BTYPE_ID = BOOK_TYPE.BTYPE_ID;

SELECT NAMA_LGKP,PDDK_AKH
FROM biodata
LEFT outer JOIN pendidikan ON biodata.pddk_id = pendidikan.pddk_id;
18. Perform Right Outer Join of 2 tables;
SELECT book_name,BTYPE_NAME
FROM book
right outer JOIN BOOK_TYPE ON book.BTYPE_ID = BOOK_TYPE.BTYPE_ID;

SELECT NAMA_LGKP,PDDK_AKH
FROM biodata
right outer JOIN pendidikan ON biodata.pddk_id = pendidikan.pddk_id;
19. Perfrom Full Outer Join of 2 tables;
SELECT book_name,BTYPE_NAME
FROM book
full outer JOIN BOOK_TYPE ON book.BTYPE_ID = BOOK_TYPE.BTYPE_ID;

SELECT NAMA_LGKP,PDDK_AKH
FROM biodata
full outer JOIN pendidikan ON biodata.pddk_id = pendidikan.pddk_id;
For following queries you have to create new tables with the same structures and insert several data
into new tables

20. Perform a Union of 2 tables;


select * from book
union
select * from book2

select * from biodata


union
select * from biodata2
21. Perform a Union All from 2 tables;
select * from book
union all
select * from book2

select * from biodata


union all
select * from biodata2
22. Perform an Intersect from 2 tables;
select * from book
intersect
select * from book2

select * from biodata


intersect
select * from biodata2

23. Perform an query that have subquery that use AVG value as the condition of the subquery (see
Fig 8.7);
select * from book where price <= (select AVG(price) from book2)
select * from biodata where salary >=(select AVG(salary) from biodata2)

24. Perform a query that have subquery that use IN value as the condition of the subquery (see Fig
8.8);
select * from book where price in (select price from book2 where BOOK_ID=5)

select * from biodata where GOL_DRH in (select GOL_DRH from biodata2 where
nik=111)
25. Perform a query that use date function.
select * from borrow where Start_DATE = '2018-10-23'

select * from Ektp where EKTP_CREATED_DATE ='2010-09-13'

S-ar putea să vă placă și