ready for rewrite of content
All checks were successful
learn org at code.softwareshinobi.com/databases.softwareshinobi.com/pipeline/head This commit looks good
All checks were successful
learn org at code.softwareshinobi.com/databases.softwareshinobi.com/pipeline/head This commit looks good
This commit is contained in:
191
landing/docs/SQL-101/old/018-essential-mysql-functions.md
Normal file
191
landing/docs/SQL-101/old/018-essential-mysql-functions.md
Normal file
@@ -0,0 +1,191 @@
|
||||
# Essential MySQL Functions
|
||||
|
||||
MySQL has many built-in functions. We will covering some important most used built-in functions; for a complete list refer to the online MySQL Reference Manual (http://dev.mysql.com/doc/).
|
||||
|
||||
> NOTE: As of now we will be going through only function and their output, as they would be self explanatory.
|
||||
|
||||
## Numeric Functions
|
||||
```sql
|
||||
SELECT ROUND(5.73)
|
||||
```
|
||||
6
|
||||
|
||||
```sql
|
||||
SELECT ROUND(5.73, 1)
|
||||
```
|
||||
5.7
|
||||
|
||||
```sql
|
||||
SELECT TRUNCATE(5.7582, 2)
|
||||
```
|
||||
5.75
|
||||
|
||||
```sql
|
||||
SELECT CEILING(5.2)
|
||||
```
|
||||
6
|
||||
|
||||
```sql
|
||||
SELECT FLOOR(5.7)
|
||||
```
|
||||
5
|
||||
|
||||
```sql
|
||||
SELECT ABS(-5.2)
|
||||
```
|
||||
5.2
|
||||
|
||||
```sql
|
||||
SELECT RAND() -- Generates a random floating point number b/w 0 & 1
|
||||
```
|
||||
|
||||
## STRING Functions
|
||||
```sql
|
||||
SELECT LENGTH('sky')
|
||||
```
|
||||
3
|
||||
|
||||
```sql
|
||||
SELECT UPPER('sky')
|
||||
```
|
||||
SKY
|
||||
|
||||
```sql
|
||||
SELECT LOWER('sky)
|
||||
```
|
||||
sky
|
||||
|
||||
```sql
|
||||
SELECT LTRIM(' sky')
|
||||
```
|
||||
sky
|
||||
|
||||
```sql
|
||||
SELECT RTRIM('sky ')
|
||||
```
|
||||
sky
|
||||
|
||||
```sql
|
||||
SELECT TRIM(' sky ')
|
||||
```
|
||||
sky
|
||||
|
||||
```sql
|
||||
SELECT LEFT('Kindergarten', 4)
|
||||
```
|
||||
Kind
|
||||
|
||||
```sql
|
||||
SELECT RIGHT('Kindergarten', 6)
|
||||
```
|
||||
garten
|
||||
|
||||
```sql
|
||||
SELECT SUBSTRING('Kindergarten', 3, 5)
|
||||
```
|
||||
nderg
|
||||
|
||||
```sql
|
||||
SELECT LOCATE('n','Kindergarten') -- LOCATE returns the first occurrence of a character or character string, if found, otherwise it returns 0
|
||||
```
|
||||
3
|
||||
|
||||
```sql
|
||||
SELECT REPLACE('Kindergarten', 'garten', 'garden')
|
||||
```
|
||||
Kindergarden
|
||||
|
||||
```sql
|
||||
SELECT CONCAT('first', 'last')
|
||||
```
|
||||
firstlast
|
||||
|
||||
## DATE Functions
|
||||
```sql
|
||||
SELECT NOW()
|
||||
```
|
||||
2021-10-21 19:59:47
|
||||
|
||||
```sql
|
||||
SELECT CURDATE()
|
||||
```
|
||||
2021-10-21
|
||||
|
||||
```sql
|
||||
SELECT CURTIME()
|
||||
```
|
||||
20:01:12
|
||||
|
||||
```sql
|
||||
SELECT MONTH(NOW())
|
||||
```
|
||||
10
|
||||
|
||||
```sql
|
||||
SELECT YEAR(NOW())
|
||||
```
|
||||
2021
|
||||
|
||||
```sql
|
||||
SELECT HOUR(NOW())
|
||||
```
|
||||
13
|
||||
|
||||
```sql
|
||||
SELECT DAYTIME(NOW())
|
||||
```
|
||||
Thursday
|
||||
|
||||
## Formatting Dates and Times
|
||||
|
||||
> In MySQL, the default date format is "YYYY-MM-DD", ex: "2025-05-12", MySQL allows developers to format it the way they want. We will discuss some of them.
|
||||
```sql
|
||||
SELECT DATE_FORMAT(NOW(), '%M %D %Y')
|
||||
```
|
||||
October 22nd 2021
|
||||
|
||||
```sql
|
||||
SELECT DATE_FORMAT(NOW(), '%m %d %y')
|
||||
```
|
||||
10 22 21
|
||||
|
||||
```sql
|
||||
SELECT DATE_FORMAT(NOW(), '%m %D %y')
|
||||
```
|
||||
10 22nd 21
|
||||
|
||||
```sql
|
||||
SELECT TIME_FORMAT(NOW(), '%H %i %p')
|
||||
```
|
||||
14:11 PM
|
||||
|
||||
## Calculating Dates and Times
|
||||
|
||||
```sql
|
||||
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY) --return tomorrows date and time
|
||||
```
|
||||
|
||||
2021-10-23 14:26:17
|
||||
|
||||
```sql
|
||||
SELECT DATE_ADD(NOW(), INTERVAL -1 YEAR)
|
||||
```
|
||||
or
|
||||
```sql
|
||||
SELECT DATE_SUB(NOW(), INTERVAL 1 YEAR)
|
||||
```
|
||||
> Both the queries will return the same output
|
||||
|
||||
2020-10-22 14:29:47
|
||||
|
||||
```sql
|
||||
SELECT DATEDIFF('2021-09-08 09:00', '2021-07-07 17:00') -- It will return the difference in number of days, time won't be considered
|
||||
```
|
||||
|
||||
63
|
||||
|
||||
```sql
|
||||
SELECT TIME_TO_SEC('09:00') - TIME_TO_SEC('09:02')
|
||||
```
|
||||
-120
|
||||
|
||||
Reference in New Issue
Block a user