SQL Exercise: Employees with Hire date in format February 22, 1991
SQL employee Database: Exercise-7 with Solution
[An editor is available at the bottom of the page to write and execute the scripts.]
7. From the following table, write a SQL query to find those employees with hire date in the format like February 22, 1991. Return employee ID, employee name, salary, hire date.
Sample table: employees
Pictorial Presentation:

Sample Solution:
SELECT emp_id,
emp_name,
salary,
to_char(hire_date,'MONTH DD,YYYY')
FROM employees;
Sample Output:
emp_id | emp_name | salary | to_char --------+----------+---------+------------------- 68319 | KAYLING | 6000.00 | NOVEMBER 18,1991 66928 | BLAZE | 2750.00 | MAY 01,1991 67832 | CLARE | 2550.00 | JUNE 09,1991 65646 | JONAS | 2957.00 | APRIL 02,1991 67858 | SCARLET | 3100.00 | APRIL 19,1997 69062 | FRANK | 3100.00 | DECEMBER 03,1991 63679 | SANDRINE | 900.00 | DECEMBER 18,1990 64989 | ADELYN | 1700.00 | FEBRUARY 20,1991 65271 | WADE | 1350.00 | FEBRUARY 22,1991 66564 | MADDEN | 1350.00 | SEPTEMBER 28,1991 68454 | TUCKER | 1600.00 | SEPTEMBER 08,1991 68736 | ADNRES | 1200.00 | MAY 23,1997 69000 | JULIUS | 1050.00 | DECEMBER 03,1991 69324 | MARKER | 1400.00 | JANUARY 23,1992 (14 rows)
Explanation:
The provided query in SQL that retrieves the employee ID, employee name, salary, and hire date of all employees from the 'employees' table. The hire date will be formatted as a string in the "MONTH DD,YYYY" format. The "to_char" function is used to format the "hire_date" column as a string in the format "MONTH DD,YYYY".
Practice Online
Sample Database: employee

Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous SQL Exercise: Produce the output of employees.
Next SQL Exercise: Without the spaces, count each employee name characters.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
SQL: Tips of the Day
Grouped LIMIT in PostgreSQL: Show the first N rows for each group?
db=# SELECT * FROM xxx; id | section_id | name ----+------------+------ 1 | 1 | A 2 | 1 | B 3 | 1 | C 4 | 1 | D 5 | 2 | E 6 | 2 | F 7 | 3 | G 8 | 2 | H (8 rows)
I need the first 2 rows (ordered by name) for each section_id, i.e. a result similar to:
id | section_id | name ----+------------+------ 1 | 1 | A 2 | 1 | B 5 | 2 | E 6 | 2 | F 7 | 3 | G (5 rows)
PostgreSQL v9.3 you can do a lateral join
select distinct t_outer.section_id, t_top.id, t_top.name from t t_outer join lateral ( select * from t t_inner where t_inner.section_id = t_outer.section_id order by t_inner.name limit 2 ) t_top on true order by t_outer.section_id;
Database: PostgreSQL
Ref: https://bit.ly/3AfYwZI
- Weekly Trends
- Python Interview Questions and Answers: Comprehensive Guide
- Scala Exercises, Practice, Solution
- Kotlin Exercises practice with solution
- MongoDB Exercises, Practice, Solution
- SQL Exercises, Practice, Solution - JOINS
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join
We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook