Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Biggest value from two or more fields

Tags:

mysql

I need to get the biggest value from two fields:

SELECT MAX(field1), MAX(field2) 

Now, how can I get biggest value from these two?

like image 788
Qiao Avatar asked Apr 11 '10 01:04

Qiao


People also ask

How do I find the maximum value between two columns in SQL?

In SQL Server there are several ways to get the MIN or MAX of multiple columns including methods using UNPIVOT, UNION, CASE, etc… However, the simplest method is by using FROM … VALUES i.e. table value constructor. Let's see an example. In this example, there is a table for items with five columns for prices.

How do I select 3 max values in SQL?

To get the maximum value from three different columns, use the GREATEST() function. Insert some records in the table using insert command. Display all records from the table using select statement.


1 Answers

You may want to use the GREATEST() function:

SELECT GREATEST(field1, field2); 

If you want to get the absolute maximum from all the rows, then you may want to use the following:

SELECT GREATEST(MAX(field1), MAX(field2)); 

Example 1:

SELECT GREATEST(1, 2); +----------------+ | GREATEST(1, 2) | +----------------+ |              2 | +----------------+ 1 row in set (0.00 sec) 

Example 2:

CREATE TABLE a (a int, b int);  INSERT INTO a VALUES (1, 1); INSERT INTO a VALUES (2, 1); INSERT INTO a VALUES (3, 1); INSERT INTO a VALUES (1, 2); INSERT INTO a VALUES (1, 4);  SELECT GREATEST(MAX(a), MAX(b)) FROM a; +--------------------------+ | GREATEST(MAX(a), MAX(b)) | +--------------------------+ |                        4 | +--------------------------+ 1 row in set (0.02 sec) 
like image 145
Daniel Vassallo Avatar answered Sep 28 '22 07:09

Daniel Vassallo