Возможные решения
- mysql> select e_id, birth_date -> from employee_per -> and birth_date <= '1964-12-31';
mysql> select e_id, birth_date -> from employee_per -> where birth_date >= '1970-01-01' -> and birth_date <= '1972-12-31';
Результат запроса представлен на рис. 9.5.

Рис. 9.5. Поиск по дате рождения в определенном диапазоне
mysql> select e_id, birth_date, p_email -> from employee_per -> where month(birth_date) = 4;
Результат запроса представлен на рис. 9.12.

Рис. 9.12. Сотрудники, родившиеся в апреле
или
mysql> select e_id, birth_date, p_email -> from employee_per -> where MONTHNAME(birth_date) = 'April';
Результат аналогичен рис. 9.12.
mysql> select e_id, birth_date, s_name -> from employee_per where -> YEAR(birth_date) = 1968 -> ORDER BY s_name;
Результат запроса представлен на рис. 9.13.

Рис. 9.13. Сотрудники 1968 года рождения, с сортировкой по именам
Примечание: Значение NULL показано в самом верху. Более подробно значение NULL будет рассмотрено ниже.
mysql> select e_id from employee_per -> where month(birth_date) = month(current_date);
Результат запроса представлен на рис. 9.14.

Рис. 9.14. Сотрудники родившиеся в этом месяце
mysql> select distinct year(birth_date) from employee_per;
Результат запроса представлен на рис. 9.15.

Рис. 9.15. Уникальные годы рождения
mysql> select year(birth_date) as Year, -> count(*) from employee_per -> GROUP BY Year;
Результат запроса представлен на рис. 9.16.

Рис. 9.16. Количество сотрудников, родившихся в каждом году
mysql> select MONTHNAME(birth_date) AS Month, -> count(*) AS Number -> from employee_per -> GROUP BY Month -> ORDER BY Number DESC;
Результат запроса представлен на рис. 9.17.

Рис. 9.17. Количество сотрудников, родившихся в каждом месяце
mysql> select e_id, s_name -> from employee_per -> where m_status = 'Y';
или
mysql> select e_id, s_name -> from employee_per -> where s_name IS NOT NULL;
mysql> select e_id, s_name -> from employee_per -> where s_name IS NOT NULL -> ORDER BY s_name;
- mysql> select e_id, birth_date -> from employee_per -> and birth_date <= '1964-12-31';
mysql> select e_id, birth_date -> from employee_per -> where birth_date >= '1970-01-01' -> and birth_date <= '1972-12-31';
Результат запроса представлен на рис. 9.5.

Рис. 9.5. Поиск по дате рождения в определенном диапазоне
mysql> select e_id, birth_date, p_email -> from employee_per -> where month(birth_date) = 4;
Результат запроса представлен на рис. 9.12.

Рис. 9.12. Сотрудники, родившиеся в апреле
или
mysql> select e_id, birth_date, p_email -> from employee_per -> where MONTHNAME(birth_date) = 'April';
Результат аналогичен рис. 9.12.
mysql> select e_id, birth_date, s_name -> from employee_per where -> YEAR(birth_date) = 1968 -> ORDER BY s_name;
Результат запроса представлен на рис. 9.13.

Рис. 9.13. Сотрудники 1968 года рождения, с сортировкой по именам
Примечание: Значение NULL показано в самом верху. Более подробно значение NULL будет рассмотрено ниже.
mysql> select e_id from employee_per -> where month(birth_date) = month(current_date);
Результат запроса представлен на рис. 9.14.

Рис. 9.14. Сотрудники родившиеся в этом месяце
mysql> select distinct year(birth_date) from employee_per;
Результат запроса представлен на рис. 9.15.

Рис. 9.15. Уникальные годы рождения
mysql> select year(birth_date) as Year, -> count(*) from employee_per -> GROUP BY Year;
Результат запроса представлен на рис. 9.16.

Рис. 9.16. Количество сотрудников, родившихся в каждом году
mysql> select MONTHNAME(birth_date) AS Month, -> count(*) AS Number -> from employee_per -> GROUP BY Month -> ORDER BY Number DESC;
Результат запроса представлен на рис. 9.17.

Рис. 9.17. Количество сотрудников, родившихся в каждом месяце
mysql> select e_id, s_name -> from employee_per -> where m_status = 'Y';
или
mysql> select e_id, s_name -> from employee_per -> where s_name IS NOT NULL;
mysql> select e_id, s_name -> from employee_per -> where s_name IS NOT NULL -> ORDER BY s_name;


![]() | © 2003-2007 INTUIT.ru. Все права защищены. |