SELECT id, sum FROM orders WHERE products_count > 3;
SELECT * FROM orders WHERE status != "cancelled";
-- вместо != можно и такие варианты: <>, NOT LIKE, NOT IN ("cancelled")
SELECT id, `sum` FROM orders WHERE products_count > 3 AND id IS NOT null ORDER BY id --;
SELECT * FROM orders WHERE `status` IN ('cancelled', 'returned')
SELECT * FROM orders WHERE `status` = 'cancelled' AND `sum` BETWEEN 3000 AND 10000
SELECT * FROM orders WHERE `status` = 'cancelled' AND `sum` NOT BETWEEN 3000 AND 10000
SELECT title, amount, amount * 1.65 AS pack FROM book; --можно делать арифм дейсвтия со столбцами
SELECT * FROM products ORDER BY price DESC, count;
-- отсортирует по столбцу price по убыванию, а затем по count (ASC по возрастанию, DESC по убыванию).
SELECT * FROM products ORDER BY price LIMIT 10, 5;
-- LIMIT 5 выведет первые 5 строк, LIMIT 10, 5 выведет 5 строк начиная с 11 т.е. 10 строк пропустит
create table t (
id integer primary key generated always as identity
);
CREATE TABLE book (
book_id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(50),
author VARCHAR(30),
price DECIMAL(8, 2),
amount INT
);
INSERT INTO book (title, author, price, amount)
VALUES ('Мастер и Маргарита', 'Булгаков М.А.', 670.99, 3);
-- Если не указать какое-то поле, оно будет заполнено значением NULL
-- Добавление нескольких строк
INSERT INTO book (title, author, price, amount)
VALUES ('Белая гвардия', 'Булгаков М.А.', 540.5, 5);
INSERT INTO book (title, author, price, amount)
VALUES ('Идиот', 'Достоевский Ф.М.', 460, 10);
INSERT INTO book (title, author, price, amount)
VALUES ('Братья Карамазовы', 'Достоевский Ф.М.', 799.01, 2);
-- Можно и так
INSERT INTO book
VALUES
(NULL, 'Белая гвардия', 'Булгаков М.А.',540.50, 5),
(NULL, 'Идиот', 'Достоевский Ф.М.', 460, 10),
(NULL, 'Братья Карамазовы', 'Достоевский Ф.М.', 799.01, 2); --или вместо NULL написать DEFAULT
-- или лучше так
INSERT INTO book (title, author, price, amount)
VALUES
('Белая гвардия', 'Булгаков М.А.',540.50, 5),
('Идиот', 'Достоевский Ф.М.', 460, 10),
('Братья Карамазовы', 'Достоевский Ф.М.', 799.01, 2);