﻿ SQL: Employees with Hire date in format February 22, 1991

# 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

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