Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MySQL.docx
Скачиваний:
6
Добавлен:
01.05.2025
Размер:
762 Кб
Скачать
☆

Возможные решения

  1. mysql> select l_name, f_name, title

  2. -> from employee_data where

  3. -> title IN

  4. -> ('старший программист',

  5. -> 'программист мультимедиа');

  6. 2. mysql> select f_name, l_name, salary from

  7. -> employee_data where salary BETWEEN

  8. -> 70000 AND 90000;

  9. Выводятся имена и должности всех, кто не является программистом.

  10. mysql> SELECT f_name, l_name, title from

  11. -> employee_data where title NOT IN

  12. -> ('программист', 'старший программист',

-> 'программист мультимедиа');

  1. Этот оператор выводит список тех, кто не является программистом, и которые младше 28 или старше 32 лет.

  2. mysql> SELECT f_name, l_name, title, age from

  3. -> employee_data where title NOT IN

  4. -> ('программист', 'старший программист',

  5. -> 'программист мультимедиа') AND

-> age NOT BETWEEN 28 AND 32;

Упорядочивание данных

Рассмотрим вопрос о том, как можно изменить порядок вывода данных, извлеченных из таблиц MySQL, используя предложениеORDER BY оператора SELECT.

Извлекаемые до сих пор данные всегда выводились в том порядке, в котором они были сохранены в таблице. В действительностиSQL позволяет сортировать извлеченные данные с помощью предложения ORDER BY. Это предложение требует имя столбца, на основе которого будут сортироваться данные. Давайте посмотрим, как можно вывести имена сотрудников с упорядоченными поалфавиту фамилиями сотрудников (в возрастающем порядке).

SELECT l_name, f_name from

employee_data ORDER BY l_name;

А вот так сотрудников можно отсортировать по возрасту.

SELECT f_name, l_name, age

from employee_data

ORDER BY age;

Предложение ORDER BY может сортировать в возрастающем порядке ( ASCENDING или ASC ) или в убывающем порядке (DESCENDING или DESC ) в зависимости от указанного аргумента.

Чтобы вывести список сотрудников в убывающем порядке, можно использовать следующий оператор.

SELECT f_name from employee_data

ORDER by f_name DESC;

Примечание: Возрастающий порядок ( ASC ) используется по умолчанию.

Задания

1. Вывести список сотрудников в порядке, определяемом зарплатой, которую они получают.

2. Выведите список сотрудников в убывающем порядке их стажа работы в компании.

3. Что делает следующий оператор?

SELECT emp_id, l_name, title, age

from employee_data ORDER BY

title DESC, age ASC;

4. Вывести список сотрудников (фамилию и имя), которые занимают должность "программист" или "разработчик Web" и отсортировать их фамилии по алфавиту.

Возможные решения

  1. mysql> SELECT f_name, l_name, salary

  2. -> from employee_data

  3. -> ORDER BY salary;

  4. mysql> SELECT f_name, l_name, yos

  5. -> from employee_data

  6. -> ORDER by yos DESC;

  7. Оператор выводит список сотрудников с идентификационным номером, должностью, и возрастом, отсортированный по должности в убывающем порядке и по возрасту в возрастающем порядке.

  8. mysql> SELECT emp_id, l_name, title, age

  9. -> from employee_data ORDER BY

-> title DESC, age ASC;

Примечание: Сначала сортируются должности в убывающем порядке. Затем для каждой должности сортируется возраст сотрудников в возрастающем порядке.

  1. mysql> SELECT l_name, f_name from employee_data

  2. -> where title IN ('программист',

  3. -> 'разработчик Web') ORDER BY l_name;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]