2016-12-15 2 views
-1

У меня есть таблица в базе данных MySQL, откуда я должен получить самое низкое и самую высокое значение из нескольких колонков по indicator_id,найти минимальное и максимальное значение из нескольких колонок

данных таблицы данных, как

Indicator_id threshold_id colour Strat_value End_value 
2004    1   Green  2   2 
2004    2   Amber  1   1 
2004    3   Red  0   0 
2004    4   Black  -1   -10 

Я использовал следующий код, но не получил правильного результата.

select indicator_id, 
     least(Start_value,End_value) low, 
     greatest(Start_value,End_value) high 
from shrewd_db.threshold 
group by id_indicator; 

любая помощь была бы оценена. благодаря

+0

Покажите нам образец данных и ожидаемых результатов. \t Пожалуйста, прочитайте [** How-to-Ask **] (http://stackoverflow.com/help/how-to-ask) \t \t И вот отличное место для [** START **] (http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/), чтобы узнать, как улучшить качество вопроса и получить лучшие ответы. –

+0

Я выхожу как indeicator_id = 2004, low = 2 и high = 2 – Sumon

+0

Да, но какой должен быть правильный выход? –

ответ

1

SQL DEMO

SELECT `Indicator_id`, 
     LEAST(MIN(`Strat_value`), MIN(`End_value`)) as smallest, 
     GREATEST(MAX(`Strat_value`), MAX(`End_value`)) as biggest 
FROM Table1 
GROUP BY `Indicator_id` 

ВЫВОД

enter image description here

+0

Отличная работа. спасибо – Sumon

Смежные вопросы