MYSQL - 1列中的多个所有数据,同一列中的最大值

问题描述 投票:0回答:3

我在条件表中有这样的数据:

+----+
| c1 |
+----+
| 1  |
| 2  |
| 3  |
| 4  |
| 5  |
+----+

我想要的是将c1中的所有数据与c1列中的最高值相乘,因此它变为:

1x5
2x5
3x5
4x5
5x5

结果应该是这样的:

+--------+
| new c1 |
+--------+
| 5      |
| 10     |
| 15     |
| 20     |
| 25     |
+--------+

那么,我应该写什么查询?

java jquery mysql sql
3个回答
1
投票

您可以使用 :

SELECT t.m * c1 
FROM MyTable, 
(SELECT max(c1) as m from MyTable) t

demo


0
投票

您可以在子查询上使用交叉连接来计算最大值

 select a.c1*t.max_c1
 from my_table  a
 cross  join (
  select max(c1)  as max_c1
  from my_table 
 ) t

0
投票

你可以试试这个

SELECT (xx.columnName * xx.max_val) AS 'expected_result' FROM (SELECT MAX(columnName) AS max_val,myTable.columnName FROM myTable)xx
© www.soinside.com 2019 - 2024. All rights reserved.