Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
pp:2024:tema2 [2024/04/10 04:17]
alexandra.udrescu01 old revision restored (2024/04/09 13:23)
pp:2024:tema2 [2024/04/23 23:06] (current)
alexandra.udrescu01 [Operatii cu una sau mai multe Tabele]
Line 3: Line 3:
 <note important>​ <note important>​
  
-**DEADLINE ​TODO**+**DEADLINE ​5 MAI 23:59**
  
   * Temele trebuie submise pe curs.upb.ro,​ in assignment-ul numit ''​Tema 2 Scala''​.   * Temele trebuie submise pe curs.upb.ro,​ in assignment-ul numit ''​Tema 2 Scala''​.
Line 15: Line 15:
   * **var** (**val** este ok!)   * **var** (**val** este ok!)
 </​note>​ </​note>​
-<​note>​Scheletul se poate găsi la: TODO</​note>​+<​note>​Scheletul se poate găsi la:{{:​pp:​2024:​skel2.zip|}}</​note>​
  
 ==== Scopul Temei ==== ==== Scopul Temei ====
Line 166: Line 166:
 **2.2.** Pentru a simplifica definirea conditiilor de filtrare, vom defini cateva operatori care sa ne permita sa scriem cod mai concis. **2.2.** Pentru a simplifica definirea conditiilor de filtrare, vom defini cateva operatori care sa ne permita sa scriem cod mai concis.
 Vom folosi urmatorii operatori ce extind clasa FilterCond: Vom folosi urmatorii operatori ce extind clasa FilterCond:
-  - == - pentru a verifica egalitatea a doua conditii de filtrare.+  - === - pentru a verifica egalitatea a doua conditii de filtrare.
   - && - pentru a face conjunctia a doua conditii de filtrare.   - && - pentru a face conjunctia a doua conditii de filtrare.
   - || - pentru a face disjunctia a doua conditii de filtrare.   - || - pentru a face disjunctia a doua conditii de filtrare.
Line 212: Line 212:
 </​code>​ </​code>​
  
-**3.1.**. Implementati functia create, care primeste numele unei tabele ​si o lista de coloane ​si creeaza o noua tabela ​cu acele coloane ​doar daca numele tabelei nu exista deja in baza de date. Daca numele tabelei exista, functia va intoarce baza de date nemodificata.+**3.1.**. Implementati functia create, care primeste numele unei tabele si creeaza o noua tabela doar daca numele tabelei nu exista deja in baza de date. Daca numele tabelei exista, functia va intoarce baza de date nemodificata.
 <code scala> <code scala>
-def create(tableName:​ String, columns: List[String]): Database = ???+def create(tableName:​ String): Database = ???
 </​code>​ </​code>​
  
Line 250: Line 250:
   * Numele coloanei utilizate pentru join in tabelul final va fi preluat din primul tabel. ​   * Numele coloanei utilizate pentru join in tabelul final va fi preluat din primul tabel. ​
   * Se va intoarce eroare cand unul din tabele nu exista. Daca un tabel este gol, se va intoarce celălalt tabel.   * Se va intoarce eroare cand unul din tabele nu exista. Daca un tabel este gol, se va intoarce celălalt tabel.
 +  * Liniile din rezultat sunt in ordinea: linii ce au intrări in ambele tabele, linii doar in prima tabela, linii doar in a2a tabela.
  
 <hidden Exemplu> <hidden Exemplu>