2. Agenda
Morning Session Afternoon Session
- Normalization 犖犖劇賢犖犖萎犖 犖÷元
犖犖萎犖犖犖迦
- Workshop design
database
- Import data
- SQL101
- Trigger
- Stored Procedure
- User Defined Function
- Workshop query report
- Conclusion
3. Normalization
1NF - Eliminate Repeating Groups (Make a separate table for each
set of related attributes, and give each table a primary key)
2NF - A relation is in second normal form if it is in 1NF and
every non key attribute is fully functionally dependent on the
primary key.
3NF - A relation is in second normal form if it is in 2NF and
Every non-prime attribute of R is non-transitively dependent
on every key of R (Relation Table)
8. Import data
- Setup extension from https://bit.ly/2CoUtgT
- Convert excel or any sources to CSV
- Import CSV by extension into database
9. Structure Query Language
[SELECT] - [FROM] - [WHERE] - [GROUP BY] - [HAVING] - [ORDER BY]
- SELECT FirstName, LastName FROM Employee
- SELECT * FROM Employee
- SELECT FirstName FROM Employee ORDER BY FirstName
- SELECT FirstName FROM Employee WHERE Department=HR
- SELECT FIrstName
FROM Employee
WHERE Department=HR
ORDER BY FirstName
10. JOIN Operator
SELECT FirstName, DepartmentName
FROM Employee
INNER JOIN Department ON EmployeeId.DepId = Department.DepId
SELECT FirstName, DepartmentName
FROM Employee
INNER JOIN Department ON EmployeeId.DepId = Department.DepId
INNER JOIN ControlManager ON ControlManager.MgrId =
Employee.MgrId
16. LEFT JOIN SQL:
SELECT 犖犖犖園肩犖犖犖園犖犖迦, 犖犖劇犖犖犖犖園犖犖迦, 犖о険犖犖犖朽犖ム顕犖犖迦
FROM 犖犖犖÷弦犖ム犖犖園犖犖迦 as emp
LEFT JOIN 犖犖犖÷弦犖ム犖迦牽犖ム顕犖犖迦 as leave
ON emp.犖犖犖園肩犖犖犖園犖犖迦 = leave.犖犖犖園肩犖犖犖園犖犖迦
17. Query Processor
1. FROM
2. ON
3. JOIN
4. WHERE
5. GROUP BY
6. WITH CUBE or WITH
ROLLUP
7. HAVING
8. SELECT
9. DISTINCT
10. ORDER BY
11. TOP
18. Aggregation
1. COUNT - 犖犖園犖犢犖迦犖о犢犖犖о犖園犖犖犖÷ (records)
2. MIN - 犖犖迦犖迦犖朽犖犢犢犖迦犖朽犖犖伍 (minimize)
3. MAX - 犖犖迦犖迦検犖迦犖犖朽犖犖伍 (maximize)
4. SUM - 犖犖迦犖ム牽犖о検 (summation)
5. AVG - 犖犖迦犖迦犖犖ム元犢犖 (average)