Задать вопрос
@Evreii

Как правильно написать запрос?

Здравствуйте, пытаюсь написать запрос подходящий под условие: Посчитать сколько и каких экземпляров книг нужно заказать поставщикам, чтобы на складе было одинаковое количество экземпляров каждой книги, равное значению самого большого количества экземпляров одной книги на складе. Столбцу с количеством заказываемых экземпляров книг присвоить имя Заказ.
Вот моя попытка:
SELECT `title`, `author`, `amount`(SELECT MAX(`amount`) FROM `book`) AS Заказ FROM `book` WHERE COUNT(MAX(`amount` - `amount` FROM `book`));

Так же, прикрепляю саму таблицу со значениями:
604cfb574679e343497671.png
  • Вопрос задан
  • 642 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@mletov
SELECT *,
        (  (SELECT MAX(amount) FROM books) - amount ) AS orderAmount
FROM books
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Для MySQL 8:
SELECT *,
       FIRST_VALUE(`amount`) OVER `win` - `amount` AS `Заказ`
  FROM `test`
  WINDOW `win` AS (ORDER BY `amount` DESC)
Ответ написан
Комментировать
@VitalyChaikin
SELECT *,
(MaxAmount.amount - amount ) AS orderAmount
FROM books
LEFT JOIN (SELECT MAX(amount) AS amount FROM books) AS MaxAmount ON True
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 10:44
15000 руб./за проект
22 дек. 2024, в 10:12
10000 руб./за проект
22 дек. 2024, в 09:51
3000 руб./за проект