Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.11 KB | None | 0 0
  1. USE BD1d_pn_1B
  2. GO
  3.  
  4. /*1 Lista adresowa pracowników wg. wzoru: (imie, nazwsiko), (adres, miasto (kraj))*/
  5. SELECT Imię+' '+Nazwisko Pracownik,Adres+', '+ Miasto + ' ('+Kraj+')' [Adres pracownika]
  6. FROM Pracownicy
  7. ORDER BY Nazwisko, Imię, Kraj, Miasto
  8.  
  9. /*2a Przykład złączenia bez "warunku złączenia ----> iloczyn kartezjański*/
  10. SELECT p.Imię, p.Nazwisko, k.NazwaKategorii
  11. FROM Kategorie k, Pracownicy p
  12. ORDER BY p.Nazwisko, p.Imię, k.NazwaKategorii;
  13.  
  14.  
  15. /*2b Przykład złączenia bez "warunku złączenia ----> iloczyn kartezjański*/
  16. SELECT p1.Imię, p2.Nazwisko
  17. FROM Pracownicy p1, Pracownicy p2;
  18.  
  19.  
  20. /*3a Przykład złączenia z "warunkiem złączenia w klauzuli WHERE ----> SQL92*/
  21. SELECT p.IDpracownika, p.Imię, p.Nazwisko, k.NazwaKategorii + ' ('+CAST(k.IDkategorii AS nvarchar)+')'
  22. FROM Kategorie k, Pracownicy p
  23. WHERE k.IDkategorii=p.IDpracownika
  24. ORDER BY k.NazwaKategorii, p.Nazwisko;
  25.  
  26. /*3b Przykład złączenia JOIN z "warunkiem złączenia" w klauzuli ON ----> MSSQL*/
  27. SELECT p.IDpracownika, p.Imię, p.Nazwisko, k.NazwaKategorii + ' ('+CAST(k.IDkategorii AS nvarchar)+')'
  28. FROM Kategorie k INNER JOIN Pracownicy p ON k.IDkategorii=p.IDpracownika
  29. ORDER BY k.NazwaKategorii, p.Nazwisko;
  30.  
  31. /*4 - produkt (kategoria), Cena*/
  32. SELECT p.NazwaProduktu+' ('+k.NazwaKategorii+') ' [Produkt (kategoria)], p.CenaJednostkowa [Cena produktu]
  33. FROM Produkty p INNER JOIN Kategorie k ON p.IDkategorii=k.IDkategorii
  34. ORDER BY p.CenaJednostkowa DESC
  35.  
  36. /*5a - produkt (kategoria), Cena, gdzie cena z przedzialu [55,97] lub produkty których brak w magazynie*/
  37. SELECT p.NazwaProduktu+' ('+k.NazwaKategorii+') ' [Produkt (kategoria)], p.CenaJednostkowa [Cena produktu],
  38. p.StanMagazynu [Stan magazynu]
  39. FROM Produkty p INNER JOIN Kategorie k ON p.IDkategorii=k.IDkategorii
  40. WHERE (p.CenaJednostkowa BETWEEN 55 AND 97) OR (p.StanMagazynu=0)
  41. ORDER BY [Cena produktu]
  42.  
  43. /*5b - produkt (kategoria), Cena, gdzie cena z przedzialu [55,97] lub produkty których brak w magazynie*/
  44. SELECT p.NazwaProduktu+' ('+k.NazwaKategorii+') ' [Produkt (kategoria)], p.CenaJednostkowa [Cena produktu],
  45. p.StanMagazynu [Stan magazynu]
  46. FROM Produkty p, Kategorie k
  47. WHERE ( p.IDkategorii=k.IDkategorii) AND ((p.CenaJednostkowa BETWEEN 55 AND 97) OR (p.StanMagazynu=0))
  48. ORDER BY [Cena produktu]
  49.  
  50. /*5c - produkt (kategoria), Cena, gdzie cena z przedzialu [55,97] lub produkty których brak w magazynie*/
  51. SELECT p.NazwaProduktu+' ('+k.NazwaKategorii+') ' [Produkt (kategoria)], p.CenaJednostkowa [Cena produktu],
  52. p.StanMagazynu [Stan magazynu], z.IDzamówienia, z.DataZamówienia
  53. FROM Produkty p, Kategorie k, PozycjeZamówienia pz, Zamówienia z
  54. WHERE (p.IDkategorii=k.IDkategorii) AND (p.IDproduktu=pz.IDproduktu)
  55. AND (z.IDzamówienia=pz.IDzamówienia)
  56. AND ((p.CenaJednostkowa BETWEEN 55 AND 97) OR (p.StanMagazynu=0))
  57. ORDER BY [Cena produktu]
  58.  
  59. /*7a-lista szefów*/
  60. SELECT DISTINCT p2.IDpracownika,p2.Stanowisko,p2.imię,p1.Szef
  61. FROM Pracownicy p1 INNER JOIN Pracownicy p2 ON p1.Szef=p2.IDpracownika
  62.  
  63.  
  64. SELECT *
  65. FROM Pracownicy
  66.  
  67. /*7b-lista pracowników dla wskazanego szefa*/
  68. SELECT DISTINCT p1.IDpracownika, p1.Imię, p1.Nazwisko
  69. FROM Pracownicy p1
  70. WHERE Szef=2
  71.  
  72. /*7c-lista pracowników i ich szefów*/
  73. SELECT
  74. FROM Pracownicy s, Pracownicy p
  75. WHERE s.IDpracownika=p.Szef
  76.  
  77. /*7d-lista pracowników szefa nr np. 2 ---> SQL92 */
  78.  
  79. /*7d2-lista pracowników szefa nr np. 2 - wprowadzamy złączenie wewnętrzne INNER JOIN */
  80.  
  81. /*8 - lista produktów(kategoria) i cen */
  82. SELECT
  83.  
  84. /*9 - Lista zamówień (ID zamówienia) z nazwami klientów (nazwa firmy)*/
  85.  
  86. /*10 - Lista dostawców (nazwa dostawcy i kraj) oraz nazwa produktu */
  87.  
  88. /*11 - Lista klientów i daty ich zamówień */
  89.  
  90. /*12 - Lista kategorii z (nazwami dostawców) */
  91.  
  92. /*13 - Lista zamówień produktów z (krajem dostawcy produktu) */
  93.  
  94. /*14 - Dane typu: Klient-Pracownik na podstawie analizy zamówień*/
  95.  
  96. /*15 - Przygotować dane faktury do zamówienia nr .... */
  97.  
  98. /*16 - Sprawdzić, czy istnieją takie same miasta wśród adresów pracowników i klientów */
  99.  
  100. /*17 - Sprawdzić, czy istnieją takie same miasta wśród adresów pracowników, dostawców i klientów */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement