केस स्टडी UDFs

SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

Meghan Kwartler

IT Consultant

टैक्सी राइड बिज़नेस समस्या

  1. EU प्राइवेट इक्विटी फर्म US Transportation में निवेश अवसर ढूँढ रही है.
  2. सप्ताह के हर दिन, NYC के प्रत्येक बरो के लिए प्रति दूरी औसत किराया, राइड काउंट और कुल राइड समय क्या है?

पीली टैक्सी की फोटो

SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

टैक्सी राइड बिज़नेस समस्या

  1. EU प्राइवेट इक्विटी फर्म US Transportation में निवेश अवसर ढूँढ रही है.
  2. सप्ताह के हर दिन, NYC के प्रत्येक बरो के लिए प्रति दूरी औसत किराया, राइड काउंट और कुल राइड समय क्या है?
  3. बरो के अंदर किन पिकअप लोकेशंस को हर ड्राइवर शिफ्ट के लिए शेड्यूल करना चाहिए?

पीली टैक्सी की फोटो

SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

कन्वर्ज़न UDFs

CREATE FUNCTION dbo.ConvertMileToMeter (@miles numeric)
RETURNS numeric
AS
BEGIN
RETURN (SELECT @miles * 1609.34)
END
CREATE FUNCTION dbo.ConvertCurrency (@Currency numeric, @ExchangeRate numeric)
RETURNS numeric
AS
BEGIN
RETURN (SELECT @ExchangeRate * @Currency)
END
SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना
SELECT TripDistance as 'MileDistance', 
dbo.ConvertMileToMeter (TripDistance) as 'MeterDistance', 
FareAmount as 'FareUSD', 
dbo.ConvertCurrency (FareAmount, '.78') as 'FareGBP' 
FROM dbo.YellowTripData
+--------------+---------------+---------+---------+
| MileDistance | MeterDistance | FareUSD | FareGBP |
|--------------+---------------+---------+---------+
|  1.10        | 1609          |  6      | 6       |
|  0.02        | 0             | 52      | 52      |
|  0.50        | 1609          |  4      | 4       |
|  7.75        | 12875         | 22      | 22      |
|  0.80        | 1609          |  6      | 6       |
|  0.90        | 1609          |  7      | 7       |
|  1.76        | 3219          |  7      | 7       |
|  8.47        | 12875         | 24      | 24      |
|  2.40        | 3219          | 10.50   | 11      |
| 12.60        | 20921         | 60      | 60      |
|  0.90        | 1609          |  7      | 7       |
+--------------+---------------+---------+---------+
SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

इटरेट करें

ALTER FUNCTION dbo.ConvertMileToMeter (
  @miles numeric (18, 2)
) RETURNS numeric (18, 2) as BEGIN RETURN (
  SELECT @miles * 1609.34
) END;
ALTER FUNCTION dbo.ConvertCurrency (
  @Currency numeric (18, 2), 
  @ExchangeRate numeric(18, 2)
) RETURNS numeric (18, 2) AS BEGIN RETURN (
  SELECT @ExchangeRate * @Currency
) END;
SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

शिफ्ट्स का क्या?

CREATE FUNCTION dbo.GetShift (@Hour int)
RETURNS int
AS
BEGIN
RETURN (CASE 
    WHEN @Hour >= 0 AND @Hour < 9 THEN 1
    WHEN @Hour >= 9 AND @Hour < 18 THEN 2
    WHEN @Hour >= 18 AND @Hour < 24 THEN 3
END)
END;
SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

शिफ्ट्स टेस्ट करें

SELECT 
  DATENAME(hour, PickupDate) AS 'Hour', 
  dbo.GetShift (
    DATENAME(hour, PickupDate)
  ) AS 'Shift' 
FROM YellowTripData 
GROUP BY DATENAME(hour, PickupDate) 
ORDER BY 
  dbo.GetShift (
    DATENAME(hour, PickupDate)
  )
+------+-------+
| Hour | Shift |
|------+-------|
|  3   | 1     |
|  6   | 1     |
|  4   | 1     |
|  2   | 1     |
|  0   | 1     |
|  8   | 1     |
|  5   | 1     |
|  1   | 1     |
|  7   | 1     |
|  9   | 2     |
| 11   | 2     |
| 15   | 2     |
| 14   | 2     |
| ...  | ...   |
+------+-------|
SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

अब आपकी बारी!

SQL Server में फंक्शंस और स्टोरड प्रोसीजर्स लिखना

Preparing Video For Download...