SQLize
Online
/
PHPize Online
/
SQLtest Online
A
A
A
Share
Donate
Blog
Popular
Donate
A
A
A
Share
Blog
Popular
SQLize.online is a free online SQL environment for quickly running, experimenting with and sharing code.
You can run your SQL code on top of the most popular RDBMS including MySQL, MariaDB, SQLite, PostgreSQL, Oracle and Microsoft SQL Server.
SQL code:
Upload
Copy
Format
Clear
CREATE TABLE Staff ( staff_id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100), salary INT, email VARCHAR(50), birthday VARCHAR(50), jobtitle_id INT ); INSERT INTO Staff(name, salary, email, birthday, jobtitle_id) VALUES ('Иванов Сергей', 100000,'test@test.ru', '18.03.1990', 1), ('Петров Пётр', 60000,'petr@test.ru', '01.12.2000', 7), ('Сидоров Василий', 80000,'test@test.ru', '04.02.1999', 6), ('Максимов Иван', 70000,'ivan.m@test.ru', '02.10.1997', 4), ('Попов Иван', 120000,'popov@test.ru', '25.04.2001', 5); CREATE TABLE Jobtitles ( jobtitle_id INT, name VARCHAR(100) ); INSERT INTO Jobtitles(jobtitle_id, name) VALUES (1, "Разработчик"), (2, "Системный аналитик"), (3, "Менеджер проектов"), (4, "Системный администратор"), (5, "Руководитель группы"), (6, "Инженер тестирования"), (7, "Сотрудник группы поддержки"); /* 1) Напишите запрос, с помощью которого можно найти дубли в поле email из таблицы Sfaff. */ SELECT * FROM Staff WHERE email IN ( SELECT email FROM Staff GROUP BY 1 HAVING COUNT(*) > 1 ); /* 2) Напишите запрос, с помощью которого можно определить возраст каждого сотрудника из таблицы Staff на момент запроса. */ SELECT name, TIMESTAMPDIFF(YEAR, (STR_TO_DATE(birthday, '%d.%m.%Y')), subdate(DATE(DATE_ADD(NOW(), INTERVAL 3 HOUR)), 1)) AS age from Staff; /* Возраст увеличивается со следующего дня после дня рождения. Расчет для зоны UTC+3. */ /* 3) Напишите запрос, с помощью которого можно определить должность (Jobtitles.name) со вторым по величине уровнем зарплаты. */ SELECT J.name, S.salary AS SecondHighestSalary FROM Jobtitles AS J INNER JOIN Staff AS S ON J.jobtitle_id = S.jobtitle_id ORDER BY SecondHighestSalary DESC LIMIT 1 OFFSET 1; SELECT Jobtitles.name, SELECT MAX(salary) FROM Staff AS SecondHighestSalary FROM Jobtitles, Staff WHERE Staff.salary != SecondHighestSalary;
SQL
Server:
MariaDB 11.4
MariaDB 11.5
MariaDB 10
MariaDB 10 Sakila (ReadOnly)
MySQL 5.7
MySQL 5.7 Sakila (ReadOnly)
MySQL 8.0
MySQL 8.0 Sakila (ReadOnly)
SQLite 3
PostgreSQL 10 Bookings (ReadOnly)
PostgreSQL 11
PostgreSQL 12
PostgreSQL 13
PostgreSQL 14
PostgreSQL 15
MS SQL Server 2017
MS SQL Server 2019
MS SQL Server 2022
MS SQL Server 2022 AdventureWorks (ReadOnly)
Firebird 4.0
Firebird 4.0 (Employee)
Oracle Database 19c (HR)
Oracle Database 21c
Oracle Database 23c Free
SOQOL
Version
ER Diagram
Preserve result
Stuck with a problem?
Got Error?
Ask ChatGPT!
Result:
Copy
Clear