2010-12-05 3 views
2

나는 어느 열 (사과 또는 복숭아)에서 가장 높은 정수 값을 선택하려면 mysql GREATEST() 함수를 사용하고 있습니다. $result = "SELECT GREATEST(apples, peaches) FROM table";echo $result를 사용쿼리 된 필드를 최대() 통해 검색

+----+------------------+ 
| id | apples | peaches | 
+----+------------------+ 
| 1 | 8 | 4 | 
| 2 | 2 | 6 | 
| 3 | 3 | 9 | 
| 4 | 7 | 2 | 
| 5 | 4 | 4 | 
+----+------------------+ 

, 내가 얻을 : 각각의 값에 다음

8 
6 
9 
7 

, 나는 해당 과일의 이름과 과일 아이콘 에코 싶다. MYSQL 쿼리를 통해 아래 이미지를 어떻게 얻을 수 있습니까?

alt text

또한, 동일 값은 GREATEST() 함수에 의해 표시되지 않는 것을 알. 동일한 값을 표시하는 방법이 있습니까?

+1

는 만 2 열이 있는가 또는 이것은 단순화 예? –

+0

예 2 열만 비교해보십시오. – Noob

답변

4
SELECT 
IF(apples >= peaches, apples, peaches) AS quantity, 
IF(apples >= peaches, 'apples', 'peaches') AS fruit 
FROM ... 

또는, 당신은 사과가 동일의 기본이 될 두 과일이 동등하게 표현하면 알고 싶어하지 않으려면 :

SELECT 
IF(apples >= peaches, apples, peaches) AS quantity, 
CASE WHEN apples > peaches THEN 'apples' WHEN peaches > apples THEN 'apples' ELSE 'both' END AS fruit 
FROM ... 
+0

코드 작동에 감사드립니다! 이 훌륭한 쿼리 (사과, 복숭아)를 수량으로, 코드를 실행할 때 사과를> 복숭아라고하면이 코드를 구현하기 위해'great()'함수를 보존하고 싶었습니다. 복숭아 (peach)> 사과 (apples) 둘 다 'FROM FROM FROM ...' – Noob

관련 문제