×
Clear all filters including search bar
Valeri Tandilashvili's Personal Professional Blog
document_details INSERT INTO students (
first_name,
last_name,
gender,
points,
document_details
)
VALUES (
'Beka',
'Gelashvili',
'1',
'82',
'{"issue_date":"2020-05-18", "expire_date":"2030-05-18", "number":"ET2312UO"}'
);SELECT
VERSION()
Equivalent of the query above is to use system variable @@VERSION SELECT
@@VERSIONJSON type column for storing JSON objects / arraysALTER TABLE students
ADD COLUMN document_details JSONto_lower that will run before updating any student and makes first_name lower caseDROP TRIGGER IF EXISTS to_lower;
CREATE TRIGGER to_lower
BEFORE UPDATE ON students
FOR EACH ROW
SET NEW.first_name = LOWER(NEW.first_name);to_upper that will run before inserting student into students table and makes first_name UPPER CASEDROP TRIGGER IF EXISTS to_upper;
CREATE TRIGGER to_upper
BEFORE INSERT ON students
FOR EACH ROW
SET NEW.first_name = UPPER(NEW.first_name);--helpuniuser1 user on university databaseGRANT
SELECT,
INSERT,
UPDATE,
DELETE
ON `university`.*
TO 'uniuser1'@'localhost';SELECT full_name(first_name, last_name) FROM students, whereas procedure can not be called in SQL queries.
4. Function uses RETURN keyword to return value, whereas procedure does not need the keyword to return values.
5. Function parameter can only be IN type, whereas procedure parameters can have one of the three types: IN, OUT or IN OUT
6. Function usually is used in expressions like built-in functions or variables whereas procedure is usually used to execute some business logicNULLIF function is going to return NULL SELECT
id,
first_name,
NULLIF(gender, 0) student_gender
FROM studentsCASE used in SELECT statement determines student's gender based gender_id columnSELECT
id,
first_name,
CASE gender
WHEN 1 THEN 'Male'
WHEN 2 THEN 'Female'
ELSE 'Undefined'
END AS student_gender
FROM students