Categories

Advertisement
⏱️ 4 min read

What is a Function

N
By NotesMind
Advertisement

A Function is a reusable database object that accepts input, performs a specific task, and returns a single value.

Unlike a Stored Procedure, a Function must return a value and can be used directly inside SQL statements such as SELECT, WHERE, and ORDER BY.


आसान भाषा में (Hindi)

Function Database के अंदर बनाया गया एक Reusable Program होता है।

यह:

  • Input लेता है।
  • कोई Calculation या Processing करता है।
  • अंत में एक Value Return करता है।

Simple Definition:

Function = Input + Processing + One Output


Why Do We Need Functions?

मान लीजिए किसी Company में हर Employee का Annual Salary निकालना है।

हर बार Query लिखनी पड़ेगी:

SELECT EmployeeName,
Salary*12 AS AnnualSalary
FROM Employee;

अगर यही Calculation हर Report में चाहिए, तो बार-बार वही Formula लिखना पड़ेगा।

इसकी जगह एक Function बना सकते हैं।


Real-Life Example

मान लीजिए Monthly Salary = ₹50,000

Function

CalculateAnnualSalary(50000)

↓

50000 × 12

↓

600000

अब जहाँ भी Annual Salary चाहिए, केवल Function Call करेंगे।


How Function Works

Application/User
       │
       ▼
Call Function
       │
       ▼
Input Parameter
       │
       ▼
Processing
       │
       ▼
Return One Value

Types of SQL Functions

SQL Functions दो प्रकार की होती हैं।

1. Built-in Functions

Database पहले से ही कई Functions देता है।

Examples:

  • COUNT()
  • SUM()
  • AVG()
  • MAX()
  • MIN()
  • UPPER()
  • LOWER()
  • LENGTH()
  • NOW()

Example

SELECT UPPER('rahul');

Output

RAHUL

2. User Defined Function (UDF)

जो Function User स्वयं बनाता है।

Example

CalculateBonus()

Syntax (MySQL)

DELIMITER $$

CREATE FUNCTION FunctionName(Parameter datatype)

RETURNS datatype

BEGIN

SQL Statements

RETURN value;

END $$

DELIMITER ;

Example 1: Simple Function

Employee Table

EmployeeName Salary
Rahul 50000

Create Function

DELIMITER $$

CREATE FUNCTION AnnualSalary
(
MonthlySalary INT
)

RETURNS INT

BEGIN

RETURN MonthlySalary * 12;

END $$

DELIMITER ;

Execute Function

SELECT AnnualSalary(50000);

Output

AnnualSalary
600000

Explanation

Input

50000

Processing

50000 × 12

Output

600000

Example 2: Function with Employee Table

Employee Table

Name Salary
Rahul 50000
Aman 45000

Query

SELECT
EmployeeName,
AnnualSalary(Salary)
FROM Employee;

Output

EmployeeName AnnualSalary
Rahul 600000
Aman 540000

RETURN Statement

हर Function में RETURN अनिवार्य होता है।

Example

RETURN MonthlySalary*12;

अगर RETURN नहीं होगा, Function सही तरीके से काम नहीं करेगा।


Function Parameters

Example

AnnualSalary(50000)

यहाँ

50000

Parameter है।


Function vs Stored Procedure

Function Stored Procedure
हमेशा Value Return करती है Value Return करना आवश्यक नहीं
SQL Query के अंदर उपयोग होती है CALL से Execute होती है
SELECT में उपयोग हो सकती है SELECT में सीधे उपयोग नहीं होती
Calculation के लिए बेहतर Business Logic के लिए बेहतर

Built-in Function Categories

Aggregate Functions

  • COUNT()
  • SUM()
  • AVG()
  • MAX()
  • MIN()

String Functions

  • UPPER()
  • LOWER()
  • CONCAT()
  • LENGTH()
  • SUBSTRING()

Date Functions

  • NOW()
  • CURDATE()
  • YEAR()
  • MONTH()
  • DAY()

Numeric Functions

  • ROUND()
  • CEIL()
  • FLOOR()
  • ABS()
  • MOD()
Advertisement

💬 Leave a Comment & Rating