[英]RDBMS - SQL Max Value of a column based upon another column's uniqueness
這是一個非常難以回答的問題。 所以這里。 以下sql:
select * from Survey_Answers
where QuestionID='50a350a5-9f53-4f1a-83b8-485de45ac9a9'
order by MaxRating
生成以下內容:
QuestionID Answer Value MaxRating MinRating
--------------------------------------------------------------------------
50a350a5-9f53-4f1a-83b8-485de45ac9a9 anywhere 0 1 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 anyplace 0 2 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 test 9 2 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 love 10 3 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 no one 10 4 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 feel this way 0 5 0
(6 row(s) affected)
在MaxRating列中有兩個“2”。 我想要這兩列的最大值。 因此,例如,如果有三個1,兩個2和五個4,我希望基於不同的最大列的“值”列的最大值。
我希望這是有道理的,所以代替上面的結果應該是:
QuestionID Answer Value MaxRating MinRating
--------------------------------------------------------------------------
50a350a5-9f53-4f1a-83b8-485de45ac9a9 anywhere 0 1 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 test 9 2 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 love 10 3 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 no one 10 4 0
50a350a5-9f53-4f1a-83b8-485de45ac9a9 feel this way 0 5 0
9是基於Maxrating列的“Value”列的最大值,數據為“2”
這很難解釋,所以我希望有人理解這一點。 任何幫助都很高興。 任何重新措辭的幫助都會很棒。 謝謝。
像這樣的東西:
select * from Survey_Answers sa1 where sa1.QuestionID = '50a350a5-9f53-4f1a-83b8-485de45ac9a9' and sa1.value = (select max(value) from Survey_Answers sa2 where sa2.questionid = sa1.QuestionID and sa2.maxrating = sa1.maxrating) order by MaxRating
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.