BAHASA QUERY FORMAL BAHASA QUERY FORMAL ALJABAR RELATIONAL Alh kumpuln opersi terhp relsi, imn setip opersi menggunkn stu tu leih relsi untuk menghsilkn stu relsi yng ru OPERATOR YANG DIGUNAKAN OPERATOR HIMPUNAN * Union tu gungn ( ) Union ri relsi A n B inytkn segi A B Himpunn semu elemen(tuple) ik ri relsi A tu relsi B tu keuuny terpt kerngkpn t Contoh: A = {1,2,3} B = {5,7} A U B ={1,2,3,5,7} * Intersection tu irisn ( ) Intersection ri relsi A n B inytkn segi A B Himpunn semu elemen tu tuple ri relsi A, Sekligus ri relsi B Contoh: A = {1,2,3} B = {2,3,5,7} A B ={2,3} 1
* Difference Difference ri relsi A n B inytkn engn A - B Himpunn semu elemen tu tuple ri relsi A, tetpi ukn ri relsi B Contoh: A = {1,2,3} B = {3,5,7} A B ={1,2} Crtesin prouct Prouct crtesin ri relsi A n B inytkn engn A X B contoh : A = { 1,2,3} B = { 5,7 } A X B = { ( 1,5), (1,7), ( 2,5), (2,7), (3,5),(3,7) } OPERATOR RELATIONAL Restrict ( ) lh Pemilihn tupel tu recor Project ( ) lh pemilihn ttriute tu fiel Divie ( ) lh memgi Join ( ) lh menggungkn RELATIONAL ALGEBRA Opertor p reltionl lger igi menji 2 kelompok, : 1. Opertor sr untuk funmentl opertionl 2. Opertor tmhn untuk itionl opersionl Tel iwh ini lh contoh untuk mengerjkn perinth perinth Reltion Alger: Relsi Mtkulih KD_MK NAMA_MK SKS NIP 207 LOGIKA & ALGO 4 199910486 310 STRUKTUR DATA 3 200109655 360 SISTEM BASIS DATA 3 200209817 545 IMK 2 200209818 547 APSI 4 200109601 305 PEMR.PASCAL 4 200703073 545 DISAIN GRAFIS 2 200010490 2
RELATION : DEPOSIT BRANCH-NAMA ACCOUNT # CUSTOMER-NAME BALANCE DOWN TOWN 101 JOHNSON 500 MIANUS 215 SMITH 700 PERRYRIDGE 102 HAYES 400 ROUNDHILL 305 TURNER 350 PERRYRIDGE 201 WILLIAMS 900 REDWOOD 222 LINDSAY 700 BRIGHTON 217 GREEN 750 Contoh LAin RELATION : BORROW BRANCH- NAME LOAN # CUTOMER- NAME AMOUNT DOWNTOWN 17 JONES 1000 REDWOOD 23 SMITH 2000 PERRYRIDGE 15 HAYES 1500 DOWNTOWN 14 JACKSON 1500 MIANUS 93 CURRY 500 ROUNDHILL 11 TURNER 900 POWNALL 29 WILLIAMS 1200 NORTHTOWN 16 ADAMS 1300 DOWNTOWN 18 JOHNSON 2000 PERRYRIDGE 25 GLENN 2500 BRIGHTON 10 BROOKS 2200 RELATION : CLIENT EMPLOYEE CUSTUMER NAME NAME0 TURNER JOHNSON HATES JONES JOHNSON JOHNSON RELATION : CUSTOMER CUSTOMER STREET CITY NAME JONES MAIN HARRISON SMITH NORTH RYE HAYES MAIN HARRISON CURRY NORTH RYE LINDSAY PARK PITTSFIELD TURNER PUTNAM STAMFORD WILLIAMS NASSAU PRINCETON 3
ADAMS SPRING PITTSFIELD JOHNSON ALMA PALO ALTO GLENN SANDHILL WOODSIDE BROOKS SENATOR BROOKLYN GREEN WALNUT STAMFORD RELATION : BRANCH ADDRESS BRANCH ASSETS BRANCH NAME CITY DOWNTOWN BROADWAY BROOKLYN 2000000 MIANUS 1 ST MANHATTAN1000000 PERRYRIDGE 5 TH BROOKLYN 150000 REDWOOD MAIN NEWALK 2000000 OPERATOR DASAR Reltion R Reltion S A B C D E F c g f f c. Selection ( ) Lower Cse Omeg Opersi selection menyeleksi tuple-tuple p seuh reltion yitu tuple-tuple yng memenuhi preicte/syrt yng suh itentukn seelumny Mencri tiuple-tuple ri Reltion BORROW, yng isi triutny : BRANCH NAME = PERRYRIDGE Reltion Algerny : BRANCH NAME = PERRYRIDGE (BORROW). Projection ( ) Opertor projection eropersi p seuh reltion, yitu mementuk reltion ru engn mengcopy triute-triute n omin-omin ri reltion terseut ersrkn rgument-rgument p opertor ts. Untuk mementuk reltion ru engn triute-triute BRANCH-NAME n CUSTOMER-NAME ri reltion BORROW, itulis engn reltion lger segi erikut : BRANCH-NAME,CUSTOMER-NAME(BORROW) 4
R[A,C] A c C c f c. Crtesin prouct ( X ) Opertor engn u reltion. Untuk mencri t customer sert kot tempt tingglny ri customercustomer yng merupkn CLIENT ri employee JOHNSON Contoh its kn menggunkn reltion CLIENT n CUSTOMER, sehingg reltionl Algerny : CLIENT.CUSTOMER-NAME,CUSTOMER.CITY ( CLIENT.CUSTOMER-NAME=CUSTOMER.CUSTOMER-NAME ( CLIENT.EMPLOYEE-NAME = JOHNSON (CLIENT X CUSTOMER))) Reltion R X S A B C D E F c g c f f g f f c g c f. Union ( ) Akn mementuk reltionl ru engn tuple-tuple yng terpt i reltionl r1 tu r2, tu tuple-tuple yng terpt i keu reltion ts. Untuk mencri customer ri cng PERRYRIDGE yng memiliki Account tu Lon tu ke-uny, mk Reltion Algerny lh : CUSTOMER-NAME( BRANCH-NAME = PERRYRIDGE (BORROW)) CUSTOMER-NAME( BRANCH- NAME= PERRYRIDGE (DEPOSIT)) 5
R Union S A B C c f c g e. Set iference ( - ) Akn mementuk reltionl ru engn tuple-tuple yng terpt ireltion r1 n tik terpt i reltion r2 Untuk mencri Customer ri cng PERRYRIDGE yng hny mempunyi Account sj Reltion Algerny : CUSTOMER-NAME( BRANCH-NAME= PERRYRIDGE (DEPOSITE)) CUSTOMER-NAME( BRANCH-NAME = PERRYRIDGE (BORROW)) R Difference A B C c c OPERATOR TAMBAHAN 1. SET INTERSECTION ( ) Alh Binry Opertion untuk mementuk seuh reltion ru engn tuple tuple yng ersl ri keu reltion yng ihuungkn. Untuk mencri Customer yng memiliki Lon n jug Account p Cng PERRYRIDGE, engn menggunkn opertor Intersection, mk Reltion Algerny pt ituliskn segi erikut : CUSTOMER-NAME( BRANCH-NAME= PERRYRIDGE (BOPRROW)) CUSTOMER-NAME( BRANCH-NAME = PERRYRIDGE (DEPOSITE)) R S(Mencri yng sm ri keu tel) A B C f 6
2. THETA JOIN Opertor yng menggungkn opersi crtesin prouct engn opersi selection. Untuk mencri semu customer p cng PERRYRIDGE yng mempunyi Lon p cng terseut, seklin menptkn kot tempt tingglny. Sehingg opersi its pt itulis engn opertor Thet Join segi erikut : BORROW.CUSTOMER-NAME, CUSTOMER.CITY((BORROW CUSTOMER)) 3. NATURAL JOIN Merupkn opertor yng melkukn opersi penggungn terhp tuple-tuple ri reltion-reltion yng iopersikn CONTOH Reltion R1 Reltion R2 A B C B C D c c c c e f c R1 R2 A B C D c c e c c e c 7
4. DIVISION Merupkn opersi pemgin ts tuple-tuple ri 2 reltion Reltion R1 Reltion R2 A B C D C D c c e f e f c e f e c e e f e R = R1 R2 A e e e B c 8