Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE DATABASE LSO;
- USE LSO;
- CREATE TABLE Products (
- id INT IDENTITY(1,1) PRIMARY KEY,
- name VARCHAR(50) NOT NULL,
- price DECIMAL(10,2) NOT NULL,
- description TEXT
- );
- INSERT INTO Products (name, price, description)
- VALUES
- ('Смартфон XYZ', 799.99, 'смартфон нового покаления'),
- ('Ноутбук ABC', 1299.99, 'Легкий и производительный ноутбук'),
- ('Наушники DEF', 49.99, 'наушники с шумоподавлением'),
- ('Планшет GHI', 399.99, 'Планшет с высокой производительностью'),
- ('Умные часы JKL', 79.99, 'Умные часы с фитнес-трекером'),
- ('Игровая консоль PS4', 500.00, 'Консоль с поддержкой 4K');
- Запросы:
- --1) Напишите SQL-запрос, который выведет длину названия продукта.
- USE LSO;
- SELECT LEN(name)
- FROM Products
- WHERE id = 1
- --2) Напишите SQL-запрос, который удалит все пробелы слева от названия продукта.
- USE LSO;
- SELECT LTRIM( name)
- FROM Products
- WHERE id = 1
- --3) Напишите SQL-запрос, который удалит все пробелы справа от названия продукта.
- USE LSO;
- SELECT RTRIM(name )
- FROM Products
- WHERE id = 1
- --4) Напишите SQL-запрос, который найдет позицию слова "apple" в описании продукта.
- #Вместо apple, искал ноутбук, т.к. не вписал apple в столбцы.
- USE LSO;
- SELECT id
- FROM Products
- WHERE CHARINDEX('ноутбук', description) > 0
- --5) Напишите SQL-запрос, который найдет позицию символа "@" в названии продукта.
- #Вместо (@), буква (н).
- USE LSO;
- SELECT id
- FROM Products
- WHERE PATINDEX('%н%', name) > 0
- --6) Напишите SQL-запрос, который вернет первые 3 символа названия продукта.
- USE LSO;
- SELECT LEFT('Наушники DEF', 3)
- FROM Products
- WHERE id = 3
- --7) Напишите SQL-запрос, который вернет последние 5 символов названия продукта.
- USE LSO;
- SELECT RIGHT('Наушники DEF', 5)
- FROM Products
- WHERE id = 3
- --8) Напишите SQL-запрос, который заменит все символы "a" на "b" в названии продукта.
- #Вместо (a), (На).
- USE LSO;
- SELECT REPLACE(name, 'На', 'b')
- FROM Products
- WHERE id = 3
- --9) Напишите SQL-запрос, который вернет перевернутое название продукта.
- USE LSO;
- SELECT REVERSE(name)
- FROM Products
- WHERE id = 3
- --10) Напишите SQL-запрос, который объединит название и цену продукта в одну строку.
- USE LSO;
- SELECT CONCAT(name, ' ', price)
- FROM Products
- WHERE id = 3
- --11) Выбрать все продукты, у которых длина наименования более 5 символов
- USE LSO;
- SELECT name
- FROM Products
- WHERE LEN(name) > 5;
- --12) Выбрать все продукты, у которых в описании есть слово "premium"
- #Вместо слова (Premium), слово (Легкий).
- USE LSO;
- SELECT name
- FROM Products
- WHERE description LIKE '%Легкий%'
- --13) Выбрать все продукты, у которых цена больше 50 и меньше 100
- USE LSO;
- SELECT name
- FROM Products
- WHERE price > 50 AND price < 100
- --14) Выбрать все продукты, у которых в наименовании есть слово "apple" и заменить его на "orange"
- #Вместо (apple), искал (Ноутбук) и заменил его на orange
- USE LSO;
- SELECT REPLACE(name, 'Ноутбук', 'orange')
- FROM Products
- WHERE name LIKE '%Ноутбук%';
- --15) Выбрать первые 5 символов из описания каждого продукта
- USE LSO;
- SELECT SUBSTRING(description, 1, 5)
- FROM Products
- --16) Выбрать все продукты, у которых цена округлена до ближайшего целого числа
- USE LSO;
- SELECT name
- FROM Products
- WHERE price = ROUND(price, 0)
- --17) Выбрать все продукты, у которых длина описания не является числом
- USE LSO;
- SELECT name
- FROM Products
- WHERE ISNUMERIC(CAST(description AS VARCHAR(MAX))) = 0
- --18) Выбрать все продукты, у которых цена неотрицательна
- USE LSO;
- SELECT name
- FROM Products
- WHERE price >= 0
- --19) Выбрать все продукты, у которых цена больше 100 и описание содержит слово "red"
- #Слово (red) заменил на слово (Консоль)
- USE LSO;
- SELECT name
- FROM Products
- WHERE price > 100 AND description LIKE '%Консоль%'
- --20) Выбрать все продукты, у которых цена уменьшена на 10%
- USE LSO;
- SELECT name, ROUND(price * 0.9, 2) AS price
- FROM Products
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement