Tugas Eksplorasi NoSQL

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

Nama : Popy Riliandini

NIM : M0518044
Kelas : BDL-A

Eksplorasi NoSQL
CREATE

CREATE(Research:department {Dname:'Research', Dnumber:5,


Mgr_start_date:1998-05-22})
CREATE(Administration:department{Dname:'Administration',
Dnumber:4, Mgr_start_date:1995-01-01})
CREATE(Headquarters:department{Dname:'Headquarters',
Mgr_start_date:1981-06-19})

CREATE(ProductX:PROJECT{Pname:'ProductX', Plocation:'Bellaire'})
CREATE(ProductY:PROJECT{Pname:'ProductY', Plocation:'Sugarland'})
CREATE(ProductZ:PROJECT {Pname:'ProductZ', Plocation:'Houston'})
CREATE(Computerization:PROJECT {Pname:'Computerization',
Plocation:'Stafford'})
CREATE(Reorganization:PROJECT{Pname:'Reorganization',Plocation:'H
ouston'})
CREATE(NewBenefits:PROJECT {Pname:'NewBenefits',
Plocation:'Stafford'})

CREATE(John:EMPLOYEE {name:'John B Smith', ssn:'123456789',


Bdate:'1965-01-09', Address:'731 Fondren, Houston, TX',
Sex:'Male', Salary:30000})
CREATE(Franklin:EMPLOYEE {name:'Franklin T Wong',
ssn:'333445555', Bdate:'1955-12-08', Address:'638 Voss, Houston,
TX', Sex:'Male', Salary:40000})
CREATE(Alicia:EMPLOYEE {name:'Alicia J Zelaya', ssn:'999887777',
Bdate:'1968-01-19', Address:'3321 Castle, Spring, TX',
Sex:'Female', Salary:25000})
CREATE(Jennifer:EMPLOYEE {name:'James E Borg', ssn:'888665555',
Bdate:'1937-11-10', Address:'450 Stone, Houston, TX', Sex:'Male',
Salary:55000})

CREATE
MATCH (a:EMPLOYEE{name : 'John B Smith'})
MATCH (b:EMPLOYEE{name : 'Franklin T Wong'})
MATCH (c:EMPLOYEE{name : 'Alicia J Zelaya'})
MATCH (d:EMPLOYEE{name : 'James E Borg'})
MATCH (e:PROJECT{Pname : 'ProductX'})
MATCH (f:PROJECT{Pname : 'ProductY'})
MATCH (g:PROJECT{Pname : 'ProductZ'})
MATCH (h:PROJECT{Pname : 'Computerization'})
MATCH (i:PROJECT{Pname : 'Reorganization'})
MATCH (j:PROJECT{Pname : 'NewBenefits'})
CREATE
(a)-[:WORKS_ON]->(e),
(a)-[:WORKS_ON]->(f),
(b)-[:WORKS_ON]->(f),
(b)-[:WORKS_ON]->(g),
(b)-[:WORKS_ON]->(h),
(b)-[:WORKS_ON]->(i),
(c)-[:WORKS_ON]->(j),
(c)-[:WORKS_ON]->(h),
(d)-[:WORKS_ON]->(i)

RETURN a,b,c,d,e,f,g,h,i,j
MATCH (k:PROJECT {Pname : 'ProductX'})
MATCH (l:PROJECT {Pname : 'ProductY'})
MATCH (m:PROJECT {Pname : 'ProductZ'})
MATCH (n:PROJECT {Pname : 'Computerization'})
MATCH (o:PROJECT {Pname : 'Reorganization'})
MATCH (p:PROJECT {Pname : 'NewBenefits'})
MATCH(q:department{Dname : 'Research'})
MATCH(r:department{Dname : 'Administration'})
MATCH(s:department{Dname : 'Headquarters'})
CREATE
(k)-[:ON_DEPT]->(q),
(l)-[:ON_DEPT]->(q),
(m)-[:ON_DEPT]->(q),
(n)-[:ON_DEPT]->(r),
(o)-[:ON_DEPT]->(s),
(p)-[:ON_DEPT]->(r)

RETURN k, l, m, n, o, p, q, r, s

Labels EMPLOYEE
Labels PROJECT
Labels DEPARTMENT
RELATIONSHIP TYPE : WORKS_ON
RELATIONSHIP TYPE: ON_DEPT

Menampilkan Attribute John

MATCH (john {name: "John B Smith"}) RETURN john


READ
Menampilkan nama-nama employee

MATCH (people:EMPLOYEE) RETURN people.name

Menampilkan employee yang gajinya lebih dari 30000

MATCH (x:EMPLOYEE) WHERE x.Salary >=30000 RETURN x.name


UPDATE
Update salary employee yang bekerja pada project ProductY menjadi 10000000
MATCH (e:EMPLOYEE)-[:WORKS_ON]->(:PROJECT{Pname:'ProductY'})
SET e.Salary = 10000000
RETURN e

DELETE
Menghapus employee yang bekerja pada project ProductX
Detach delete digunakan untuk menghapus node yang masih memiliki relation
dengan node lain.
MATCH (e:EMPLOYEE)-[:WORKS_ON]->(:PROJECT{Pname:'ProductX'})
DETACH DELETE e

You might also like