Тема:Використання подання та вбудованих функцій
1.Подання
Подання (VIEW) - об'єкт бази даних, що є результатом виконання запиту до бази даних, визначеного за допомогою оператора SELECT, в момент звернення до подання.
Подання іноді називають «віртуальними таблицями». Така назва пов'язана з тим, що подання доступно для користувача як таблиця, але саме воно не містить даних, а витягує їх з таблиць в момент звернення до нього. Якщо дані змінені в базовій таблиці, то користувач отримає актуальні дані при зверненні до подання, що використовує дану таблицю.
Синтаксис: Create view назва_подання As Select
1.1Подання
Ø Create view zarplata as select posada,sum(zarplata) as sum from robitnyk
Group by posada order by posada;
Ø Create view dima1 as select kod_zehu,nazva_zehu from zeh
where (full_name like’k%’) or (kilkist_robitnykiv between 45 and 60);
Ø Create view dima2 as select kod_klienta,cina from zamovlennya
Where data_zamovlennya<’2014:11:25 12:00:00’ and cina<90000;
1.2. Подання з підзапитом
Ø
Ø
2.Вбудовані функції
2.1 Оператор IF
Синтаксис:
IF (EXP1, EXP2, EXP3)
Якщо EXP1 істина, то IF повертає EXP2, якщо EXP1 = 0 або EXP1 = NULL, то оператор IF повертає EXP3
|
|
2.2 Оператор Case
Синтаксис:
CASE value
WHEN [compare-value1] THEN result1
[WHEN [compare-value2] THEN result2]
...
[WHEN [compare-valueN] THEN resultN]
[ELSE default-result]
END
В даному випадку value порівнюється з compare-valueX (де X = 1..n), якщо немає збігів, тоді оператор вибору повертає default-result, якщо ж інструкція ELSE відсутня, тоді повертається NULL.
2.3 Оператор Rlike
Оператор RLIKE (а також синонім REGEXP) здійснює пошук у відповідності з регулярними виразами, що дозволяє задати більш гнучкі умови пошуку, однак при цьому даний оператор працює повільніше ніж оператор LIKE.
Синтаксис: Select назва_поля from назва_таблиці Where назва_поля Rlike ‘задане слово’
2.4 Not Rlike
Оператор RLIKE можна використовувати з запереченням NOT RLIKE - в цьому випадку результатом його роботи буде вибірка рядків,які не відповідають заданим параметрам.
2.5 Функція Strcmp
STRCMP (expr1, expr2)
Функція STRCMP () повертає: 0, якщо рядки ідентичні, -1 - якщо перший аргумент менше другого (відповідно до існуючим порядком сортування), і 1 - в інших випадках:
mysql> SELECT STRCMP ('text', 'text2');
-> -1
mysql> SELECT STRCMP ('text2', 'text');
-> 1
mysql> SELECT STRCMP ('text', 'text');
-> 0