CBSERanker

Loading

Comprehensive SQL Functions Guide

Comprehensive SQL Functions Guide

Aggregate Functions

Perform calculations across multiple rows and return a single value.

Key Functions

FunctionDescriptionExample
SUM()Total of valuesSELECT SUM(salary) FROM emp;
AVG()Average valueSELECT AVG(salary) FROM emp;
COUNT()Number of non-NULL valuesSELECT COUNT(name) FROM emp;
MAX()Highest valueSELECT MAX(salary) FROM emp;
MIN()Lowest valueSELECT MIN(salary) FROM emp;
COUNT(*)Counts all rows (including NULLs)SELECT COUNT(*) FROM emp;

Practical Examples

-- Total salary expenditure
SELECT SUM(salary) FROM emp;  -- Returns 161000

-- Average salary in Sales department
SELECT AVG(salary) FROM emp WHERE dept='Sales';  -- Returns 29500

-- Number of employees in HR
SELECT COUNT(*) FROM emp WHERE dept='HR';  -- Returns 2 (includes NULL)

-- Highest salary in IT department
SELECT MAX(salary) FROM emp WHERE dept='IT';  -- Returns 30000

COUNT(*) vs COUNT(column)

  • COUNT(*) counts all rows
  • COUNT(column) counts non-NULL values only

MySQL Functions

A. String Functions

FunctionDescriptionExample
CONCAT()Joins stringsSELECT CONCAT(name, ' - ', dept);
SUBSTRING()Extracts textSELECT SUBSTRING('Database',3,4); → ‘taba’
UPPER()/LOWER()Case conversionSELECT UPPER(name) FROM emp;
TRIM()Removes spacesSELECT TRIM(' Hello '); → ‘Hello’
LENGTH()String lengthSELECT LENGTH('MySQL'); → 5
INSTR()Finds substringSELECT INSTR('Programming','gram'); → 5

B. Numeric Functions

FunctionDescriptionExample
ROUND()Rounds numbersSELECT ROUND(15.789, 2); → 15.79
MOD()RemainderSELECT MOD(11, 3); → 2
POWER()ExponentiationSELECT POWER(2, 4); → 16
SQRT()Square rootSELECT SQRT(25); → 5
TRUNCATE()Cuts decimalsSELECT TRUNCATE(15.789, 1); → 15.7

C. Date/Time Functions

FunctionDescriptionExample
CURDATE()Current dateSELECT CURDATE(); → 2023-11-20
NOW()Current datetimeSELECT NOW(); → 2023-11-20 14:30:00
MONTH()Extracts monthSELECT MONTH('2023-08-15'); → 8
DAYNAME()Weekday nameSELECT DAYNAME('2023-12-25'); → ‘Monday’
DATEDIFF()Days between datesSELECT DATEDIFF('2023-12-31','2023-01-01'); → 364

NOW() vs SYSDATE()

  • NOW() returns execution start time
  • SYSDATE() returns current time when called
SELECT NOW(), SLEEP(2), NOW();  -- Same timestamp
SELECT SYSDATE(), SLEEP(2), SYSDATE();  -- Different timestamps

Summary Table: Key SQL Functions

CategoryKey FunctionsCommon Uses
AggregateSUM, AVG, COUNTData summaries
GroupingGROUP BY, HAVINGCategorized analysis
StringCONCAT, SUBSTRINGText manipulation
NumericROUND, MODCalculations
Date/TimeNOW, MONTHTemporal analysis

Leave a Reply

Your email address will not be published. Required fields are marked *