2017-05-30 137 views
0

最高值我有一個查詢,結果列得到與查詢結果在MySQL

+------+------+------------+--------------------+ 
| id | name | work_date | daily_typing_pages | 
+------+------+------------+--------------------+ 
| 1 | John | 2007-01-24 |  250   | 
| 2 | Ram | 2007-05-27 |  220   | 
| 3 | Jack | 2007-05-06 |  170   | 
| 3 | Jack | 2007-04-06 |  100   | 
| 4 | Jill | 2007-04-06 |  220   | 
| 5 | Zara | 2007-06-06 |  300   | 
| 5 | Zara | 2007-02-06 |  350   | 
+------+------+------------+--------------------+ 

我想在另一列這一結果的最大值我的輸出像

+------+------+------------+--------------------+-----------+ 
| id | name | work_date | daily_typing_pages | Max daily| 
+------+------+------------+--------------------+-----------+ 
| 1 | John | 2007-01-24 |  250   | 350  | 
| 2 | Ram | 2007-05-27 |  220   | 350  | 
| 3 | Jack | 2007-05-06 |  170   | 350  | 
| 3 | Jack | 2007-04-06 |  100   | 350  | 
| 4 | Jill | 2007-04-06 |  220   | 350  | 
| 5 | Zara | 2007-06-06 |  300   | 350  | 
| 5 | Zara | 2007-02-06 |  350   | 350  | 
+------+------+------------+--------------------+-----------+ 
+1

您可以對返回最大值的派生表使用'CROSS JOIN'。如果您向我們顯示錶格的結構,我們可能會提供具體的查詢。 –

回答

0
set @maxValue = (select max(daily_typing_pages) from your_table); 
select *, @maxValue from your_table 

使用這個你不必使用連接條件。

0

計算的最大子查詢中的daily_typing_pages字段,並將其作爲派生表連接到主要查詢而不存在連接條件:

select * from yourtable 
inner join (select max(daily_typing_pages) as max_daily from yourtable) t 

沒有連接條件的連接將導致將來自兩個查詢的每條記錄與另一個表中的每條記錄相關聯。

或者,使用相關子查詢在選擇列表中,如果你想避免加入:

select yourtable.*, (select max(daily_typing_pages) from yourtable) as max_daily from yourtable 
0

您也可以使用此查詢

select *,(select max(daily_typing_pages) from your_table) as max_daily from your_table 

在此查詢可以追加新列max_daily,其值爲最大值(daily_typing_pages)

0

您可以使用這樣的事情,

select *, HighestValue = (select max(TotalAmount) from [dbo].[Order]) from [NorthWindDemo].[dbo].[Order]