Необходимо получить максимальную цену продажи в последних 4 транзакциях - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть table с именем sellingDetails.

Таблица данных выглядит следующим образом

+--------+----------------+
|  id    |   sellingPrice |
+--------+----------------+
|  1     |  35000         |
|  2     |  40000         |
|  3     |  30000         |
|  4     |  25000         |
|  5     |  35000         |
|  6     |  33000         |
|  7     |  25000         |
+--------+----------------+

Когда я запрашиваю

SELECT id, sellingPrice 
FROM sellingDetails 
ORDER BY id DESC limit 0, 4

Вышеприведенный запрос выводит:

+--------+----------------+
|  id    |   sellingPrice |
+--------+----------------+
|  7     |  25000         |
|  6     |  33000         |
|  5     |  35000         |
|  4     |  25000         |
+--------+----------------+

Из приведенного выше результата, как я могу получить результат MAX, то есть 35000. Я пытался использовать MAX(sellingprice), но это не сработало.

этот вопрос очень близко к моему, но у него есть соединения, в то время как у меня есть одна таблица

DB Fiddle

Если я использую следующий запрос

SELECT MAX(sellingprice) FROM sellingdetails
ORDER BY id DESC 
LIMIT 0, 4;

Я получаю вывод как 40000, который не предназначен.

1 Ответ

0 голосов
/ 27 ноября 2018

Вы можете использовать свой существующий запрос как Производная таблица , а затем определить из него максимальное значение.

SELECT MAX(dt.sellingPrice)
FROM 
(
  SELECT sellingPrice 
  FROM sellingDetails 
  ORDER BY id DESC limit 0, 4
) dt

Результат

| MAX(dt.sellingPrice) |
| -------------------- |
| 35000                |

Просмотр на БД Fiddle

...