Ответ
В работе с реляционными БД (например, PostgreSQL, MySQL) регулярно применял следующие типы запросов:
-
SELECT(Выборка данных)SELECT id, name, email FROM users WHERE active = TRUE ORDER BY created_at DESC; -
INSERT(Добавление записей)INSERT INTO orders (user_id, total_amount) VALUES (123, 99.99); -
UPDATE(Обновление данных)UPDATE products SET price = price * 0.9 WHERE category_id = 5; -
DELETE(Удаление записей)DELETE FROM session_logs WHERE created_at < NOW() - INTERVAL '30 days'; -
JOIN(Соединение таблиц)SELECT u.name, o.id, o.total FROM users u INNER JOIN orders o ON u.id = o.user_id WHERE o.status = 'completed'; -
GROUP BYс агрегатными функциями (Группировка и агрегация)SELECT department_id, COUNT(*) as emp_count, AVG(salary) as avg_salary FROM employees GROUP BY department_id HAVING COUNT(*) > 5; -
CREATE TABLE(Создание таблицы)CREATE TABLE products ( id BIGSERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, sku VARCHAR(50) UNIQUE, price DECIMAL(12,2) CHECK (price >= 0), category_id INT REFERENCES categories(id) );
В Java-приложениях эти запросы обычно выполняются не напрямую, а через ORM (Hibernate JPA), JDBC-шаблоны Spring (JdbcTemplate) или Query Builders (JOOQ, QueryDSL).