SELECT Product.Name AS Наименование, max(Sales.Sum) AS Сумма
FROM Product JOIN Sales ON Product.ProductID = Sales.ProductID
WHERE YEAR(Date) = 2019, MONTH(Date) = 07
ORDER BY Product.Price DESC LIMIT 1
GROUP BY Product.Price, Product.ProdID
#Уже забыл всё на свете, давно не работал с sql :(
#Вижу что тут явная операция соединения должна быть т.е JOIN
#ORDER BY, GROUP BY вообще плохо понял в какой последовательности идут и по каким табличным атрибутам должны выполнять свои функции. P.S. ваш комментарий прочитал заново, но всеравно не понял)
SELECT MONTH(DATE), ManagerID AS Менеджер, OrderID AS Номера заказов, Sum AS Сумма
FROM Sales
WHERE Sum IN (
SELECT Sum
FROM book
GROUP BY Sum
HAVING YEAR(DATE) = 2019);
SELECT Product.Name AS Наименование, Sales.Sum AS Сумма
FROM Product, Sales
WHERE Product.ProdID = Sales.ProdID AND YEAR(DATE) = 2019 AND MONTH(DATE) = 07
ORDER BY Product.Price DESC LIMIT 3
GROUP BY Product.Price AND Product.ID
В Jupyter Notebook просто очень удачно реализована идея с ячейками для кода, которые у меня отсортированы в зависимости от выполняемой задачи. Т.е. вместо того, чтобы создавать 10 отдельных файлов с выполняемыми скриптами я создаю 1 файл ipynb с 10 ячейками. А сейчас просто активно начал изучать темы, связанные с функциями, наследованиями классов и.т.д и возникла необходимость передать из файла А.ipynb в файл B.ipynb определённые фрагменты кода.
MinTnt, видимо подразумевается отсутствие input и output. А return просто возвращает новое значение в функцию, которую впоследствии можно будет вызвать в программе, если я все правильно понимаю. P.S условие задачи скопипастил, а автор заданий не очень ясно их формулирует...
MinTnt, Не судите строго, изучаю python 5-ый день с 0. Для меня любое отклонение от условий задачи критично т.к разобраться становиться гораздо сложнее. И хотелось рассмотреть именно возможность реализации задачи через метод со списками и Counter. Я понимаю прекрасно что есть и альтернативные варианты.
MinTnt, Прочитайте , пожалуйста, повнимательнее условия задачи. Должна быть обязательно строка ввода, которая считывает входные данные, т.е Input() . В вашем же случае вы сразу присваиваете определенные значения переменной. В любом случае, спасибо за отклик и проявленную активность.
Попробовал вот этот код, к сожалению формат вывода отличается от требуемого:
s = input().split()
ordered_s = sorted(s, key = int)
from collections import Counter
c = Counter(ordered_s)
for x in c:
print ([x for x in c if c[x]>1]) input 1: 4 8 0 3 4 2 0 3 output 1:
0 3 4
0 3 4
0 3 4
0 3 4
0 3 4
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
#Уже забыл всё на свете, давно не работал с sql :(
#Вижу что тут явная операция соединения должна быть т.е JOIN
#ORDER BY, GROUP BY вообще плохо понял в какой последовательности идут и по каким табличным атрибутам должны выполнять свои функции. P.S. ваш комментарий прочитал заново, но всеравно не понял)
Сергей Паньков,