Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

202
Views
How to get value from a column what has maximum count in postgres?

I understand the MAX function returns a maximum value from a given column for a numeric column. I want to return the maximum count of a column. The below table has two columns maker, product.

maker    product      
A        Printer   
B        Laptop        
B        Laptop      
A        Printer 
A        Monitor
A        Printer
A        Scanner

But when I run the query '''select maker, max(type) from table group by maker; ''' I am getting the result as

maker    product      
A        Monitor   
B        Laptop  

  

I want which product has a maximum count with respect to the maker like below.

maker  product      
A      Printer   
B      Laptop  

  

Note: As maker count differs, we can't set a common number in Having clause.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

You can do it with RANK() window function:

select t.maker, t.product
from (
  select maker, product, 
    rank() over (partition by maker order by count(*) desc) rn
  from tablename 
  group by maker, product
) t
where t.rn = 1

See the demo.
Results:

| maker | product |
| ----- | ------- |
| A     | Printer |
| B     | Laptop  |
over 4 years ago · Santiago Trujillo Report

0

In PostgreSQL, the simplest solution is to use DISTINCT ON:

SELECT DISTINCT ON(maker)
       maker, product
FROM atable
GROUP BY maker, product
ORDER BY maker, count(*) DESC;
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!