作者streetbad (翊)
看板Database
标题Re: [SQL] 最大值和资料同时显示问题
时间Mon May 30 10:32:08 2016
如果你要找出来的是需要包含所有栏位
外加max_score的话
可以参考下面的写法(SELECT的项目搭配子查询)
SELECT
NAME,
DATE
SCORE,
(
SELECT MAX(T.SCORE)
FROM TEST T
WHERE T.NAME = T1.NAME /*把各个NAME的最高分拉出来*/
) as MAX_SCORE
FROM TEST T1
以上为小弟浅见
还请各大神不吝指教更优写法.....
※ 引述《kuzzz (隐)》之铭言:
: 请问想在select出来的资料内,同时显示其中某一栏位的max值,有没有比较好的方式
: EX.
: name. date. score. max_score
: AAA. 5/10. 78. 95
: AAA. 5/12. 95. 95
: AAA. 5/18. 92. 95
: BBB. 5/17. 89. 92
: BBB. 5/21. 92. 92
: 原table资料仅有name, date, score 3个栏位
: 我有想过在原table left join max table
: select raw_data.* from dbo.raw_data
: left join(
: select name, date, score, max_score
: from dbo.raw_data
: group by name, data, score) m_score
: 但是这种方式个人觉得不是很好,而且做到後来笔数可能会增加
: 请问有没有更方便、更聪明的写法呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.219.188.241
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1464575533.A.AD5.html