madanska

more

Nov 27th, 2019 (edited)
359
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 2.23 KB | None | 0 0
  1. --1.    Имената на отделите, които се намират в Washington, сортирани по име на отдел низходящо;
  2.  
  3.    SELECT NAME,
  4.           STATE
  5.      FROM DEPARTMENTS
  6.     WHERE STATE = 'Washington'
  7.  ORDER BY NAME  DESC
  8.  
  9. --2.    Име на регион и съответния брой държави в него. В резултатния набор да участват само регионите с повече от 5 държави;
  10.  
  11.    SELECT R.NAME,
  12.           COUNT(C.COUNTRY_ID) CountryCOUNT
  13.      FROM REGIONS R JOIN COUNTRIES C
  14.        ON R.REGION_ID = C.REGION_ID
  15.  GROUP BY R.NAME
  16.    HAVING COUNT(C.COUNTRY_ID) > 5
  17.  
  18. --3.    Изведете имената, месечната заплата и идентификатора на длъжността на служителите,
  19. --      които работят в отдел 80 и не са обработвали поръчки до момента;
  20.  
  21.   SELECT E.FNAME,
  22.          E.LNAME,
  23.          E.SALARY,
  24.          E.JOB_ID,
  25.          COUNT(O.ORDER_ID) [Orders count]
  26.     FROM EMPLOYEES E LEFT JOIN ORDERS O
  27.       ON O.EMPLOYEE_ID = E.EMPLOYEE_ID
  28.    WHERE E.DEPARTMENT_ID = 80
  29. GROUP BY E.FNAME, E.LNAME, E.SALARY, E.JOB_ID
  30.   HAVING COUNT(O.ORDER_ID) = 0
  31.  
  32. --4.    Имена на 5-ма служители, които са обработвали най-много поръчки във фирмата;
  33.  
  34. SELECT TOP(5) E.FNAME,
  35.               E.LNAME,
  36.               COUNT(O.ORDER_ID) [Orders count]
  37.          FROM EMPLOYEES E JOIN ORDERS O
  38.            ON E.EMPLOYEE_ID = O.EMPLOYEE_ID
  39.      GROUP BY E.FNAME, E.LNAME
  40.      ORDER BY 3 DESC              
  41.  
  42. --5.    Да се създаде изглед в примерната база данни PCTrade, който да съдържа фамилия на клиент,
  43. --      брой поръчки, които е направил. В резултатния набор да участват и клиентите, които все още не са правили поръчки;
  44.  
  45. CREATE VIEW CustomerOrdersView
  46. AS
  47.   SELECT C.LNAME, COUNT(O.ORDER_ID) [Orders count]
  48.     FROM CUSTOMERS C LEFT JOIN ORDERS O
  49.       ON C.CUSTOMER_ID = O.CUSTOMER_ID
  50. GROUP BY C.LNAME
  51.  
  52. select * from CustomerOrdersView
Add Comment
Please, Sign In to add comment