Advertisement
Guest User

Untitled

a guest
Jan 16th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.98 KB | None | 0 0
  1. CREATE TABLE Promotor(PESEL VARCHAR(11) PRIMARY KEY NOT NULL,Tytul ENUM('mgr','dr','prof') DEFAULT 'prof' ,imie VARCHAR(50) NOT NULL,nazwisko Varchar(50) NOT NULL , zarobki DOUBLE UNSIGNED DEFAULT 2000, dataur DATE);
  2.  
  3. CREATE TABLE Praca(promotor VARCHAR(11),nr_indexu VARCHAR(6),TytulPracy VARCHAR(100),ocena ENUM('dst','dst plus','db','db plus', 'bdb') DEFAULT 'dst');
  4.  
  5. ALTER TABLE Praca ADD PRIMARY KEY(promotor,nr_indexu);
  6. ALTER TABLE Praca ADD FOREIGN KEY (promotor) REFERENCES Promotor(PESEL) ON DELETE CASCADE ON UPDATE CASCADE;
  7.  
  8.  
  9. CREATE TABLE Praca(promotor VARCHAR(11),nr_indexu VARCHAR(6),TytulPracy VARCHAR(100),ocena ENUM('dst','dst plus','db','db plus', 'bdb') DEFAULT 'dst' , FOREIGN KEY (promotor) REFERENCES Promotor(PESEL) ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY(promotor,nr_indexu));
  10.  
  11. 4
  12.  
  13. INSERT INTO Promotor (PESEL , imie,Tytul) VALUES ((SELECT pesel FROM list where id_postaci =5),(SELECT nazwa FROM list where id_postaci =5),'mgr');
  14.  
  15. 5
  16. UPDATE Promotor SET zarobki=zarobki*2 where Tytul='mgr';
  17.  
  18. 6
  19. ALTER TABLE Praca DROP FOREIGN KEY Praca_ibfk_1;
  20. ALTER TABLE Promotor DROP PRIMARY KEY ;
  21. ALTER TABLE Promotor ADD IdPracownika INT auto_increment PRIMARY KEY;
  22. ALTER TABLE Promotor DROP PRIMARY KEY ;
  23.  
  24.  
  25. ALTER TABLE Promotor MODIFY PESEL VARCHAR(11);
  26.  
  27.  
  28. 7
  29. SELECT CONCAT(Imie,' ',Nazwisko) zawodnik FROM zawodnicy Where wzrost<180 ORDER BY dataur DESC;
  30.  
  31. SELECT z.Nazwisko , z.Idzaw from zawodnicy z LEFT JOIN udzial u ON z.Idzaw=u.Idzaw WHERE u.IdMeczu IS NULL ;
  32.  
  33. SELECT k.Nazwa , k.Miasto , COUNT(z.Idzaw) FROM kluby k LEFT JOIN zawodnicy z ON k.IdKlubu=z.IdKlubu GROUP BY k.IdKlubu;
  34.  
  35. -
  36.  
  37. SELECT z.Idzaw , z.Imie , z.Nazwisko ,ROUND(z.wzrost/100,2) wzrost FROM zawodnicy z, udzial u where z.Idzaw=u.Idzaw AND z.imie like 'Ja%' GROUP BY z.Idzaw HAVING COUNT(u.Idzaw)>=2;
  38.  
  39. SELECT k.Nazwa , SUM(m.goleGosc) FROM kluby k , mecze m WHERE k.IdKlubu=m.Idgosc GROUP BY m.Idgosc LIMIT 1;
  40.  
  41. SELECT * FROM zawodnicy WHERE YEAR(Dataur) BETWEEN 1970 and 1979 ORDER BY Nazwisko , Imie DESC LIMIT 3;
  42.  
  43. SELECT Stadion , SUM( goleGosp + goleGosc ) FROM mecze GROUP BY Stadion;
  44.  
  45.  
  46. SELECT k.IdKlubu , k.Nazwa ,IFNULL(gosc.golpp,0)+IFNULL(gosp.golp,0) zdobyte ,IFNULL(gosc.golmm,0)+IFNULL(gosp.golm,0) stracone from (kluby k LEFT JOIN (SELECT Idgosp id ,SUM(goleGosp)golp, SUM(goleGosc) golm FROM mecze GROUP BY Idgosp) gosp ON k.IdKlubu=gosp.id ) LEFT JOIN (SELECT Idgosc id ,SUM(goleGosc) golpp, SUM(goleGosp) golmm FROM mecze GROUP BY Idgosc)gosc ON k.IdKlubu=gosc.id GROUP BY k.IdKlubu;
  47.  
  48. SELECT m.IdMeczu , gop.gosp gospodarz ,goc.gosc gosc , CONCAT(m.goleGosp,' : ',m.goleGosc) GospodarzGoscie, k.czas from mecze m , (SELECT k.nazwa gosp , k.IdKlubu id FROM kluby k ,mecze m where m.Idgosp=k.IdKlubu group by m.Idgosp) gop , (SELECT k.nazwa gosc , k.IdKlubu id FROM kluby k ,mecze m where m.Idgosc=k.IdKlubu group by m.Idgosc) goc , (SELECT m.IdMeczu id, SUM( u.doMinuty-(u.odMinuty -1)) czas FROM mecze m , udzial u WHERE m.IdMeczu=u.IdMeczu GROUP BY m.IdMeczu) k WHERE m.IdMeczu=k.id AND m.Idgosp=gop.id AND m.Idgosc=goc.id GROUP BY m.IdMeczu;
  49.  
  50. SELECT k.IdKlubu , k.Nazwa ,IFNULL(gosc.golpp,0)+IFNULL(gosp.golp,0) zdobyte ,IFNULL(gosc.golmm,0)+IFNULL(gosp.golm,0) stracone , IFNULL(s1.s,0)+IFNULL(s2.s,0) punkty from (kluby k LEFT JOIN (SELECT Idgosp id ,SUM(goleGosp)golp, SUM(goleGosc) golm FROM mecze GROUP BY Idgosp) gosp ON k.IdKlubu=gosp.id ) LEFT JOIN (SELECT Idgosc id ,SUM(goleGosc) golpp, SUM(goleGosp) golmm FROM mecze GROUP BY Idgosc)gosc ON k.IdKlubu=gosc.id LEFT JOIN (SELECT Idgosp , SUM(IF( goleGosp >= goleGosc,IF( goleGosp >goleGosc,3,1),0)) s FROM mecze GROUP BY Idgosp) s1 ON s1.Idgosp=k.IdKlubu LEFT JOIN (SELECT Idgosc , SUM(IF( goleGosp <= goleGosc,IF( goleGosp <goleGosc,3,1),0)) s FROM mecze GROUP BY Idgosc) s2 ON s2.Idgosc=k.IdKlubu GROUP BY k.IdKlubu;
  51.  
  52. SELECT Idgosp , SUM(IF( goleGosp >= goleGosc,IF( goleGosp >goleGosc,3,1),0)) s FROM mecze GROUP BY Idgosp;
  53. SELECT Idgosc , SUM(IF( goleGosp <= goleGosc,IF( goleGosp <goleGosc,3,1),0)) s FROM mecze GROUP BY Idgosc;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement