Advertisement
Somo4k

Built-in Functions

Jun 3rd, 2022
385
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 3.41 KB | None | 0 0
  1. USE [SoftUni]
  2.  
  3. --Problem 01
  4. SELECT [FirstName], [LastName]
  5. FROM [Employees]
  6. WHERE [LastName] LIKE '%ei%'
  7. --WHERE LEFT([FirstName], 2) = 'Sa'
  8.  
  9. --Problem 02
  10. SELECT [FirstName], [LastName]
  11. FROM [Employees]
  12. --WHERE [LastName] LIKE '%ei%'
  13. WHERE CHARINDEX('ei', [LastName]) <> 0,
  14.  
  15. --Problem 03
  16. SELECT [FirstName]
  17. FROM [Employees]
  18. WHERE [DepartmentID] IN (3, 10) AND DATEPART(YEAR, [HireDate]) BETWEEN 1995 AND 2005
  19.  
  20. --Problem 04
  21. SELECT [FirstName], [LastName]
  22. FROM [Employees]
  23. WHERE [JobTitle] NOT LIKE '%engineer%'
  24.  
  25. --Problem 05
  26. SELECT [Name]
  27. FROM [Towns]
  28. WHERE LEN([Name]) IN (5,6)
  29. ORDER BY [Name]
  30.  
  31. --Problem 06
  32. SELECT *
  33. FROM [Towns]
  34. WHERE LEFT([Name], 1) IN ('M', 'K', 'B', 'E')
  35. ORDER BY [Name]
  36.  
  37. --Problem 07
  38. SELECT *
  39. FROM [Towns]
  40. WHERE LEFT([Name], 1) NOT IN ('R', 'B', 'D')
  41. ORDER BY [Name]
  42.  
  43. --Problem 08
  44. CREATE VIEW [V_EmployeesHiredAfter2000]
  45. AS
  46. SELECT [FirstName], [LastName]
  47. FROM [Employees]
  48. WHERE DATEPART(YEAR, [HireDate]) > 2000
  49.  
  50. --Problem 09
  51. SELECT [FirstName], [LastName]
  52. FROM [Employees]
  53. WHERE LEN([LastName]) = 5
  54.  
  55. --Problem 10
  56.  SELECT [EmployeeID], [FirstName], [LastName], [Salary],
  57.          DENSE_RANK() OVER(PARTITION BY [Salary] ORDER BY [EmployeeID])
  58.       AS [Rank]
  59.     FROM [Employees]
  60.    WHERE [Salary] BETWEEN 10000 AND 50000
  61. ORDER BY [Salary] DESC
  62.  
  63. --Problem 11
  64.  SELECT *
  65.    FROM (
  66.            SELECT [EmployeeID], [FirstName], [LastName], [Salary],
  67.                   DENSE_RANK() OVER(PARTITION BY [Salary] ORDER BY [EmployeeID])
  68.                AS [Rank]
  69.              FROM [Employees]
  70.             WHERE [Salary] BETWEEN 10000 AND 50000
  71.          )
  72.       AS [RankingSubquery]
  73.    WHERE [Rank] = 2
  74. ORDER BY [Salary] DESC
  75.  
  76. GO
  77.  
  78. USE [Geography]
  79.  
  80. GO
  81.  
  82. --Problem 12
  83.   SELECT [CountryName], [IsoCode]
  84.     FROM [Countries]
  85.    WHERE LOWER([CountryName]) LIKE '%a%a%a%'
  86. ORDER BY [IsoCode]
  87.  
  88.  
  89. --Problem 13
  90.   SELECT [p].[PeakName], [r].[RiverName],
  91.          LOWER(CONCAT(LEFT([p].[PeakName], LEN([p].[PeakName]) - 1), [r].[RiverName]))
  92.       AS [Mix]
  93.     FROM [Rivers] AS [r],
  94.          [Peaks] AS [p]
  95.    WHERE RIGHT([p].[PeakName], 1) = LEFT([r].[RiverName], 1)
  96. ORDER BY [Mix]
  97.  
  98. GO
  99.  
  100. USE [Diablo]
  101.  
  102. GO
  103.  
  104. --Problem 14
  105. SELECT TOP(50) [Name], FORMAT([Start], 'yyyy-MM-dd') AS [Start]
  106. FROM [Games]
  107. WHERE DATEPART(YEAR, [Start]) IN (2011, 2012)
  108. ORDER BY [Start], [Name]
  109.  
  110. --Problem 15
  111. SELECT [Username],
  112.          SUBSTRING([Email], CHARINDEX('@', [Email]) + 1, LEN([Email]) - CHARINDEX('@', [Email]))
  113.       AS [Email Provider]
  114.     FROM [Users]
  115. ORDER BY [Email Provider], [Username]
  116.  
  117.  
  118. --Problem 16
  119. SELECT [Username], [IpAddress] FROM [Users]
  120.     WHERE [IpAddress] LIKE '___.1_%._%.___'
  121.     ORDER BY [Username] ASC;
  122.  
  123.  
  124. --Problem 17
  125.  SELECT [Name],
  126.          CASE
  127.               WHEN DATEPART(HOUR, [Start]) BETWEEN 0 AND 11 THEN 'Morning'
  128.               WHEN DATEPART(HOUR, [Start]) BETWEEN 12 AND 17 THEN 'Afternoon'
  129.               ELSE 'Evening'
  130.          END AS [Part of the Day],
  131.          CASE
  132.               WHEN [Duration] <= 3 THEN 'Extra Short'
  133.               WHEN [Duration] BETWEEN 4 AND 6 THEN 'Short'
  134.               WHEN [Duration] > 6 THEN 'Long'
  135.               ELSE 'Extra Long'
  136.          END AS [Duration]
  137.     FROM [Games] AS [g]
  138. ORDER BY [g].[Name], [Duration], [Part of the Day]
  139.  
  140. --Problem 18
  141. SELECT [ProductName], [OrderDate],
  142.     DATEADD(DAY,3,[OrderDate]) AS [Pay Due],
  143.     DATEADD(MONTH,1,[OrderDate]) AS [Deliver Due]
  144.     FROM [Orders]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement