Операторы и функции

Содержание

Слайд 2

Арифметические операции

Арифметические операции

Слайд 3

Битовые операции

Битовые операции

Слайд 4

Операторы сравнения

Операторы сравнения

Слайд 5

Операторы сравнения

Операторы сравнения

Слайд 6

Логические операторы

Логические операторы

Слайд 7

Функции условий IFNULL( a, b ) SELECT IFNULL( 1, 0 );

Функции условий

IFNULL( a, b )
SELECT IFNULL( 1, 0 ); // вернет 1
SELECT

IFNULL( NULL, 10 ); // вернет 10
SELECT IFNULL( NULL, ‘yes’ ); // вернет 'yes‘
NULLIF( a, b )
SELECT NULLIF( 1, 1 ); // вернет NULL
SELECT NULLIF(1,2); // вернет 1
IF( a, b, c )
SELECT IF( 1>2,2,3 `); // вернет 3
SELECT IF(1<2,'yes','no'); // вернет ‘yes’
Слайд 8

Оператор поливариантного выбора CASE val WHEN [compare] THEN result [WHEN [compare]

Оператор поливариантного выбора

CASE val
WHEN [compare] THEN result
[WHEN [compare] THEN

result ...]
[ELSE result]
END
CASE WHEN [condition]
THEN result [WHEN [condition]
THEN result ...]
[ELSE result]
END
Слайд 9

Пример SELECT CASE 1 WHEN 1 THEN "one" WHEN 2 THEN

Пример

SELECT CASE 1
WHEN 1 THEN "one"
WHEN 2 THEN "two"
ELSE

"more"
END;
SELECT CASE WHEN 1>0
THEN "true"
ELSE "false"
END;
Слайд 10

Поиск по образцу a LIKE masc; Маски % – любое число

Поиск по образцу

a LIKE masc;
Маски
% – любое число символов
_ – один

символ
Примеры
SELECT 'Hello my friend!' LIKE '%friend';
SELECT 'Hello my friend!' LIKE 'Hello%fr_end!';
SELECT 'Hello my friend!' LIKE 'Hello_friend';
Слайд 11

Регулярные выражения a REGEXP masc a RLIKE masc SELECT 'Monty!' REGEXP

Регулярные выражения

a REGEXP masc
a RLIKE masc
SELECT 'Monty!' REGEXP ‘M%y%';
SELECT 'Monty!' REGEXP

'.*';
SELECT 'new*\n*line' REGEXP 'new\\*.\\*line';
SELECT "bri*" REGEXP "^[a-d]r*[A-j]\*";
Слайд 12

Сравнение строк STRCMP( a, b ); SELECT STRCMP('text', 'text2'); //-1 SELECT

Сравнение строк

STRCMP( a, b );
SELECT STRCMP('text', 'text2'); //-1
SELECT STRCMP('text2', 'text'); //1
SELECT STRCMP('text', 'text'); //0

Слайд 13

Реливантный поиск MATCH( col1, col2, ... ) AGAINST (expr ); SELECT

Реливантный поиск

MATCH( col1, col2, ... ) AGAINST (expr );
SELECT
* FROM

articles
WHERE MATCH (title,body)
AGAINST ('database');
SELECT
id,MATCH (title,body) AGAINST ('Tutorial')
FROM articles;
Слайд 14

Операторы полнотекстового поиска

Операторы полнотекстового поиска

Слайд 15

Функции работы с датой

Функции работы с датой

Слайд 16

Функции работы с датой

Функции работы с датой

Слайд 17

Функции работы с датой

Функции работы с датой

Слайд 18

Функции работы с датой

Функции работы с датой

Слайд 19

COUNT COUNT(expr) SELECT `group_num`, COUNT(*) FROM `student` GROUP BY `group_num`;

COUNT

COUNT(expr)
SELECT `group_num`, COUNT(*)
FROM `student`
GROUP BY `group_num`;

Слайд 20

AVG AVG(expr) SELECT `group_num`, AVG(`test_score`) AS `avg` FROM `student` GROUP BY `group_num` HAVING `avg` > 50;

AVG

AVG(expr)
SELECT `group_num`, AVG(`test_score`) AS `avg`
FROM `student` GROUP BY `group_num`
HAVING `avg` >

50;
Слайд 21

MAX, MIN MIN(expr) MAX(expr) SELECT `group_num`, MIN(`test_score`) AS `min`, MAX(`test_score`) AS

MAX, MIN

MIN(expr)
MAX(expr)
SELECT
`group_num`,
MIN(`test_score`) AS `min`,
MAX(`test_score`) AS `max`
FROM `student`


GROUP BY `group_num`;