Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use mybase;
- load data infile "C:\\ProgramData\\MySQL\\MySQL Server 8.0\\Uploads\\dat.txt" into table supply;
- /*
- 3. Добавить записи используя многоуровневый insert:
- */
- insert into supply values(34,"minerva","skidel","21","20","frank sinatra","world on a string"),(35,"triviya","kossovo","58","12","sia","the greatest")
- ,(36,"favoniy","dzerzhinsk","76","8","sia","the greatest");
- /*
- 4. Написать хранимую процедуру для добавления записи в таблицу «Supply».
- 5. Добавить запись, используя хранимую процедуру из задания 4:
- */
- call inSupp("feb","gomel","22","6","jonas blue","runway");
- /*
- 6. Вывести из таблицы Songs только уникальные названия песен.
- */
- select name from songs group by name;
- /*
- 7. Вывести название и цену трех самых дешевых альбомов.
- */
- select name,price from albums where price > 0
- order by price limit 3;
- /*
- 8. Вывести второй по стоимости после самого дорогого альбома.
- */
- select name from albums where price = (select max(price) from albums where price not in(select max(price) from albums));
- /*
- 9. Найти альбом, у которого нет исполнителя.
- */
- select albums.name from id_s inner join albums on id_s.album_id = albums.al_id where id_s.singer_id is null;
- /*
- 10. То же самое что и в задании 9, но другим способом
- */
- select * from (id_s inner join albums on id_s.album_id = albums.al_id);
- /*
- 11. Вывести название и качество записи трека отсортировав сначала по качеству, затем по названию (обратный порядок), не включая плохие записи.
- */
- select name , quality from songs where not(quality = "low")
- Order by quality, name desc;
- /*
- 12. Найти все треки, которые начинаются на гласные буквы.
- */
- select name from songs where (select name regexp "^[^bcdfghjklmnpqrstvwxz]");
- /*
- 13. Найти треки, у которых название начинается не с букв
- */
- select name from songs where (select name regexp "^[^a-z]");
- /*
- 14. Посчитать отпускную цену альбомов по формуле:
- Price_Shop = Price*(1+ Rate, %+w);
- где: Price – цена альбома;
- Rate, % – процент надбавки от поставщика; w=10% при Amount> 50, w=30% при Amount <= 50.
- Результат отсортировать сначала по названию в алфавитном порядке, затем по убыванию цены.
- */
- select supply.album, albums.price * (1 + (cast(rate as unsigned)/100) +(if(supply.amount > 50,0.1,0.3)) )
- AS Price_shop from supply left join albums on supply.album = albums.name;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement