Zakir Hossain
Zakir Hossain

Reputation: 444

How to get value in one row in postgreSQL?

I have database table name emp_leave in postgreSQL9.3 like

emp_name department ann_leave med_leave cas_leave org_ann_lv org_med_lv org_cas_lv
Tame IT 3 25
Tame IT 4 20
Tame IT 3 30

I want the query result like

emp_name department ann_leave med_leave cas_leave org_ann_lv org_med_lv org_cas_lv
Tame IT 4 3 3 20 30 25

Upvotes: 1

Views: 66

Answers (2)

saravanatn
saravanatn

Reputation: 630

To eliminate null value and convert into single row

select
emp_name,
department,
min(ann_leave),
min(med_leave),
min(cas_leave),
min(org_ann_lv),
min(org_med_lv),
min(org_cas_lv)
from emp_leave
group by
emp_name,
department

Upvotes: 2

Yogesh Sharma
Yogesh Sharma

Reputation: 50163

You want aggregation :

select el.emp_name, el.department, 
       max(el.ann_leave),
       . . . ,
       max(el.org_cas_lv)
from emp_leave el
group by el.emp_name, el.department;

This assumes blank space as null.

Upvotes: 2

Related Questions