Сортировка результатов запросов




Базы данных

 

Методические указания к

самостоятельным работам для студентов II курса,

обучающимся по направлению подготовки бакалавров

230400 Информационные системы и технологии

профиль подготовки Информационные системы и технологии

 

 

Брянск 2013 г.


 

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Брянская государственная инженерно-технологическая академия»

 

 

Кафедра информационных технологий

 

 

Утверждены научно-методическим

советом БГИТА

протокол №_ от «__»______ года

 

 

Базы данных

 

Методические указания к

самостоятельным работам для студентов II курса,

обучающимся по направлению подготовки бакалавров

230400 Информационные системы и технологии

профиль подготовки Информационные системы и технологии

 

Брянск 2013г.


УДК

 

 

Базы данных: Методические указания самостоятельным работам для студентов II курса, направление подготовки бакалавров 230400 Информационные системы и технологии, профиль подготовки Информационные системы и технологии / Брянск. гос. технол. акад. Сост. Е.Г. Рыжикова– Брянск: БГИТА, 2013.

 

 

Даны методические указания к самостоятельным работам по базам данных для студентов, обучающимся по направлениям подготовки бакалавров 230400 Информационные системы и технологии, профиль подготовки Информационные системы и технологии.

 

 

Рецензент

К.т.н., доцент БОИУБ Бойко Е.И.

 

 

Рекомендованы редакционно-издательской и методической комиссиями механико-технологического факультета БГИТА.

Протокол № __от _______ 2013 г


Содержание

 

Введение. 5

Работа с БД.. 6

Создание таблиц БД.. 6

Работа с таблицами. 8

Выполнение запросов. 9

Сортировка результатов запросов. 9

Операторы условия для работы со строками. 10

Операторы соединения. 10

Ограничение размера результата. 11

Обновление данных. 12

Удаление данных. 12

Модификация структуры таблиц. 13

Функции MYSQL. 14

Функции для работы с текстом. 14

Агрегатные функции. 15

Функции для работы с числами. 16

Список литературы.. 17

 


Введение

В основе любой автоматизированной системы предприятия лежит база данных. Базы данных - совокупность данных, организованная по определенным правилам, предусматривающая общие принципы описания, хранения, манипулирования данными, независимыми от прикладных программ. СУБД – система управления базами данных – совокупность программ, предназначенных для управления БД и получения пользователями необходимой информации из неё.

Одной из ведущих СУБД является MySql. С её помощью происходит создание БД, заполнение её информацией, формирование запросов. Для облегчения работы с БД, для неё, с помощью специальных программных средств пишется интерфейс.

У студентов важно развить навыки применения специализированных программ для проектирования, разработки, внедрения и использования баз данных в различных предметных областях, что обуславливает актуальность разработанных методических указаний.

В данных методических указаниях приведены основные теоретические сведения по созданию БД, таблиц, запросов, использованию встроенных функций MySQL, приведены примеры выполнения заданий.


Работа с БД

Создать БД: mysql> CREATE DATABASE имя_БД;

Сделать БД текущей: mysql> USE имя_БД;

В результате появится сообщение: Database changed

 

Просмотр содержимого БД: mysql> SHOW TABLES;

Если БД не содержит таблиц, то на экране появится сообщение: Empty set (0.00 sec)

 

Закрытие файлов текущей базы данных: mysql> close database имя_бд

Удаление базы данных: mysql> drop databas e имя_бд

Задание 1. Создайте базу данных «Магазин», сделайте её текущей.

Выполнение:

mysql> CREATE DATABASE Magazin;

mysql> USE Magazin;

Создание таблиц БД

Создание таблиц:

mysql> CREATE TABLE имя_таблицы (имя_поля1 тип, имя_поля2 тип,….)

 

При создании таблицы, в круглых скобках, после имени поля, указывается его тип, за которым могут следовать атрибуты.

Ключевое поле в имени содержит id.

PRIMARY KEY – атрибут определения первичного ключа. Поле, для которого он указан, не должно содержать повторяющихся значений.

NOT NULL – означает, что все записи в поле должны содержать значения.

NULL – допускает наличие в поле пустых значений.

Для поля можно создавать индексы, для этого при создании таблицы, после перечня всех полей со свойствами и атрибутами, в круглых скобках, запишите

KEY имя_индекса (имя_поля) или INDEX имя_индекса (имя_поля).

Атрибут AUTO_INCREMENT указывается только для полей с числовыми типами, он автоматически создаёт уникальный индекс. Для поля с названным атрибутом, обязательно должен быть определён индекс.

 

Просмотр структуры таблицы: mysql> DESCRIBE имя_таблицы

 


Задание 2. Создайте таблицы Консультанты и Товары, следующей структуры.

Выполнение:

Konsultant

Id_FIO VARCHAR (20) PRIMARY KEY DR DATE PRIEM DATE NOT NULL TOVAR VARCHAR (15) NOT NULL ZP FLOAT(8,2)
Афонина О.П. 12.01.1980 12.01.1999 фен  
Алёхина Н.В. 14.01.1975 01.05.1999 соковыжималка  
Боров О.В. 24.05.1991 09.03.2000 пылесос  
Воронина А.А. 01.05.1983 05.06.2005 холодильник  
Ершов А.В. 02.04.1977 07.06.2004 холодильник  
Климов К.А. 03.06.1990 01.12.2007 телевизор  
Литвинова Л.А. 30.12.1980 03.04.2010 обогреватели  
Смирнова Л.И. 23.01.1975 30.09.2010 холодильник  
Тимуров В.П. 17.09.1991 11.12.2008 телевизор  

 

mysql> CREATE TABLE Konsultant (id_FIO VARCHAR (20) PRIMARY KEY, DR DATE, PRIEM DATE NOT NULL, TOVAR VARCHAR (15) NOT NULL, ZP FLOAT(8,2));

TOVAR

ID_TOVAR VARCHAR (15) PRIMARY KEY Cena FLOAT(8,2) AUTO_INCREMENT KOL_V_MAG INT(4) NULL GARANT FLOAT(3,1) SKIDKA_PROC FLOAT(3,1) NULL
фен        
соковыжималка        
пылесос        
холодильник     1,5  
телевизор        
обогреватели     2,5  

mysql> CREATE TABLE TOVAR(id_TOVAR VARCHAR (15) PRIMARY KEY, Cena FLOAT(8,2) AUTO_INCREMENT, KOL_V_MAG INT(4) NULL, GARANT FLOAT(3,1), SKIDKA_PROC FLOAT(3,1) NULL, KEY Cena(Cena));

Работа с таблицами

Заполнение данными

mysql> INSERT INTO имя_таблицы

-> VALUES ('значение поля 1', 'значение поля 1',….);

 

Многострочный ввод данных:

mysql> INSERT INTO имя_таблицы VALUES ('значение поля 1', 'значение поля 1',….),-> 'значение поля 1', 'значение поля 1',….),-> ('значение поля 1', 'значение поля 1',….); Ввод значений в таблицу из файла.

Создайте текстовый файл (txt), содержащий по одной записи в каждой строке (значения столбцов должны быть разделены символами табуляции и даны в том порядке, который был определен командой CREATE TABLE).

Загрузить файл в таблицу можно с помощью следующей команды:

mysql> LOAD DATA LOCAL INFILE "имя_файла.txt " INTO TABLE имя_таблицы; Просмотр содержимого всей таблицы: mysql> SELECT * FROM имя_таблицы;

Удаление таблицы: mysql> drop table имя_таблицы.

Задание 3. Заполните таблицы Консультанты и Сотрудники данными.

Выполнение:

Таблица Консультанты

mysql> INSERT INTO Konsultant VALUES(‘Афонина О.П.’, ‘1980-01-12’, ‘1999-01-12’, ‘фен’, 10000),->(‘Алёхина Н.В.’, ‘1975-01-14’, ‘1999-05-01’, ‘соковыжималка’,12000),->(‘Боров О.В.’, ‘1991-05-24’, ‘2000-03-09’, ‘пылесос’, 8000),-> (‘Воронина А.А.’, ‘1983-05-01’, ‘2005-06-05’, ‘холодильник’, 7000),->(‘Ершов А.В.’, ‘1977-04-02’, ‘2004-06-07’, ‘холодильник’, 12000),->(‘Климов К.А.’, ‘1990-06-03’, ‘2007-12-01’, ‘телевизор’,6000),->(‘Литвинова Л.А.’, ‘1980-12-30’, ‘2010-04-03’, ‘обогреватели’,10000),->(‘Смирнова Л.И.’, ‘1975-01-23’, ‘2010-09-30’, ‘холодильник’, 14000),->(‘Тимуров В.П.’, ‘1991-09-17’, ‘2008-12-11’, ‘телевизор’,10000);

Просмотрите результат

mysql> SELECT * FROM Konsultant;

 

Таблица Товары

mysql> INSERT INTO Tovar VALUES (‘фен’, 1500, 10, 3, NULL),

->(‘соковыжималка’, 5000, 12, 2, NULL),

->(‘пылесос’, 10000, 15, 1,NULL),

->(‘холодильник’, 20000, 8, 1.5, NULL),

->(‘телевизор’, 35000, 15, 2, NULL),

->(‘обогреватели’, 3000, 20, 2.5,NULL);

Просмотрите результат

mysql> SELECT * FROM Tovar;

 

Выполнение запросов

Просмотр содержимого таблиц:

mysql> SELECT имена столбцов через запятую FROM USERS;

 

Отбор данных в соответствии с условиями:

mysql> SELECT * FROM имя_таблицы

->WHERE имя_поля=’значение’;

 

IN – оператор, позволяющий определить значения, принадлежащие заданному множеству.

NOT IN – определяет значения, не принадлежащие заданному множеству.

Сортировка результатов запросов

ORDER BY – сортировка значений столбца по возрастанию,

ORDER BY имя_поля DESC - сортировка значений поля по убыванию.

Сортировку можно выполнять по нескольким полям.

Задание 4.

4.1. Из таблицы Консультанты выберите все сведения о телевизорах.

4.2. Из таблицы Консультанты выберите сведения о консультантах, принятых на работу позже 2000 г. и получающих заработную плату боле 10000р.

4.3. Из таблицыТовары выберите сведения о товарах, заказанных в количестве больше 14 и по цене больше 8000р. или о товарах, по цене меньше 10000 с гарантией не больше 2,5 лет.

4.4. Из таблицы Консультанты выберите все сведения о телевизорах и холодильниках.

4.5. Из таблицы Консультанты выберите сведения о всех товарах, за исключением фена, пылесоса, телевизора.

4.6. Из таблицы Товары выберите сведения о товарах с ценой не меньше 10000р.Результат отсортируйте по возрастанию поля Товар.

4.7. Из таблицы Товары выберите сведения о товарах с гарантией больше 1,5 лет.Результат отсортируйте по убыванию поля Гарантия.

4.8. Выведите все сведения из таблицы Консультанты, упорядочив по убыванию дат рождения и заработной платы.

 

Выполнение:

4.1. mysql> SELECT * FROM Konsultant WHERE tovar =’телевизор’;

4. 2. mysql> SELECT * FROM Konsultant WHERE priem > ‘2000-12-31’ and zp>10000;

4.3. mysql> SELECT * FROM Tovar WHERE (kol_v_mag >14 and cena> 8000) or (cena<10000 and garant <=2.5);

4.4. mysql> SELECT * FROM Konsultant WHERE tovar in (‘телевизор’, ‘холодильник’);

4.5. mysql> SELECT * FROM Konsultant WHERE tovar not in (‘телевизор’, ‘пылесос’, ‘фен’);

4.6. mysql> SELECT * FROM Tovar WHERE cena > =10000 ORDER BY id_tovar;

4.7. mysql> SELECT * FROM Tovar WHERE garant > 1.5 ORDER BY garant DESC;

4.8. mysql> SELECT * FROM Konsultant ORDER BY dr, zp DESC;



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-13 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: