mirror of
https://github.com/ada-dmitry/DB.mephi_ada.git
synced 2026-09-24 16:10:14 +00:00
42 lines
1.0 KiB
SQL
42 lines
1.0 KiB
SQL
SELECT *
|
|
FROM bd_employees
|
|
WHERE last_name ~ '^[a-zA-Z]+[-[a-zA-Z]]{0,}';
|
|
|
|
SELECT *
|
|
FROM bd_employees
|
|
WHERE department_id IN (
|
|
SELECT id
|
|
FROM bd_departments
|
|
WHERE street ~ '^[A-Za-z\s]+$'
|
|
);
|
|
|
|
|
|
SELECT last_name,
|
|
CASE WHEN phone_number LIKE '+7%'
|
|
THEN CONCAT('8', SUBSTRING(phone_number, 3))
|
|
ELSE phone_number END AS phone
|
|
FROM bd_employees;
|
|
|
|
UPDATE staff
|
|
SET department = (SELECT department_name FROM departments WHERE department_id = 60)
|
|
WHERE department in (
|
|
SELECT department_name
|
|
FROM departments
|
|
WHERE department_id in (
|
|
SELECT department_id
|
|
FROM employees
|
|
WHERE manager_id = (
|
|
SELECT employee_id
|
|
FROM employees
|
|
WHERE first_name = 'Neena' AND last_name= 'Kochhar')));
|
|
|
|
SELECT *
|
|
FROM bd_employees
|
|
WHERE LENGTH(REGEXP_REPLACE(first_name, '[^aeiouAEIOU]', '', 'g')) <= 3;
|
|
|
|
WITH tmp AS (
|
|
SELECT chr(i+96), i FROM generate_series(1,26) i)
|
|
SELECT e.last_name sum(t.i) AS name_sum
|
|
FROM db_employees e
|
|
JOIN tmp t ON t.chr = ANY(string_to_array(LOWER(e.last_name), NULL))
|
|
GROUP BY e.last_name; |