added select and joins examples
This commit is contained in:
parent
7b08ad389b
commit
4e73beb3f2
|
@ -0,0 +1,37 @@
|
||||||
|
USE tutorial;
|
||||||
|
|
||||||
|
/* Cartesian product (every row combined with every other row) and filter out rows */
|
||||||
|
SELECT
|
||||||
|
em.id AS 'Employee ID',
|
||||||
|
em.surname AS 'Surname',
|
||||||
|
em.forename AS 'forename',
|
||||||
|
at.id AS 'Title ID',
|
||||||
|
at.name AS 'Title'
|
||||||
|
FROM
|
||||||
|
Employee AS em,
|
||||||
|
AcademicTitle AS at
|
||||||
|
WHERE
|
||||||
|
em.surname LIKE 'Ma%'
|
||||||
|
AND at.id = em.academicTitleId;
|
||||||
|
|
||||||
|
/* only select rows which have a matching (true) condition */
|
||||||
|
SELECT *
|
||||||
|
FROM Employee AS em
|
||||||
|
INNER JOIN AcademicTitle AS at
|
||||||
|
ON em.academicTitleId = at.id
|
||||||
|
WHERE
|
||||||
|
em.surname LIKE 'Ma%';
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
em.surname,
|
||||||
|
em.roomId AS 'Employee Room',
|
||||||
|
room.id AS 'Room ID',
|
||||||
|
room.name AS 'Room name'
|
||||||
|
FROM Employee as em
|
||||||
|
INNER JOIN Room as room ON em.roomId = room.id
|
||||||
|
WHERE room.name LIKE 'a%';
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
count(*) AS Anzahl
|
||||||
|
FROM Employee em
|
||||||
|
LEFT JOIN PostalLocation post ON post.id = em.postalLocationId;
|
|
@ -0,0 +1,36 @@
|
||||||
|
USE tutorial;
|
||||||
|
|
||||||
|
SELECT positionId, forename, surname FROM Employee;
|
||||||
|
|
||||||
|
/* select only one of duplicates */
|
||||||
|
SELECT DISTINCT streetName FROM Employee;
|
||||||
|
|
||||||
|
/* add further conditions with where */
|
||||||
|
SELECT surname, EUR_GrossSalary FROM Employee
|
||||||
|
WHERE academicTitleId = 1
|
||||||
|
AND (EUR_GrossSalary BETWEEN 40000 AND 50000)
|
||||||
|
AND EUR_GrossSalary != 46000;
|
||||||
|
|
||||||
|
/* filter out non existing entries */
|
||||||
|
SELECT * FROM PostalLocation
|
||||||
|
WHERE cityDistrictName NOT LIKE ''
|
||||||
|
OR cityDistrictName IS NOT NULL;
|
||||||
|
|
||||||
|
/* check if something is a member of a list */
|
||||||
|
SELECT * FROM Employee WHERE academicTitleId IN (0, 1);
|
||||||
|
|
||||||
|
/* in with a sub query */
|
||||||
|
SELECT * FROM Employee WHERE academicTitleId IN (
|
||||||
|
SELECT academicTitleId FROM AcademicTitle WHERE academicTitleId > 1
|
||||||
|
);
|
||||||
|
|
||||||
|
/* check string for pattern */
|
||||||
|
/* %: zero or more characters */
|
||||||
|
/* _: one character */
|
||||||
|
SELECT surname FROM Employee WHERE surname LIKE 'A%';
|
||||||
|
|
||||||
|
/* where with regex */
|
||||||
|
SELECT surname FROM Employee WHERE REGEXP_LIKE(surname, '^[aB].*');
|
||||||
|
|
||||||
|
/* selects employees with have academic title of 1 or (exclusive) surname starts with B */
|
||||||
|
SELECT * FROM Employee WHERE academicTitleId = 1 XOR surname LIKE 'B';
|
Loading…
Reference in New Issue