#sql
#sql
Вопрос:
У меня есть проект SQL, и это один из вопросов. У меня есть:
SELECT * FROM ToSupply ORDER By ContractPrice;
Это мой первый проект SQL, и 5/день означает, что это должно происходить 5 раз в день, как мне это сделать? Есть ли способ повторить что-то через определенное время?
Комментарии:
1. Пожалуйста, обновите свой вопрос, включив в него примеры данных, результат, которого вы хотите достичь на основе этих данных, и логику, необходимую для создания цели на основе образцов данных
2. это должно быть сделано с помощью планировщика , предоставляемого базой данных, которую вы используете, например, в sql server вы создаете задание и планируете выполнение этого задания 5 раз в день или как Airflow в качестве расширенного планировщика ETL .
3. Пожалуйста, проясните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы выделить именно то, что вам нужно. Поскольку это написано в настоящее время, трудно точно сказать, о чем вы просите.
Ответ №1:
Чтобы найти цену товара в заказе на определенный день, вам понадобится столбец, который выражает значение даты и времени; давайте назовем это «День заказа».
Если цена товара соответствует цене, согласованной для контракта заказа, и в день поставляется только пять заказов, то этот запрос ближе к тому, что вы хотите:
SELECT AVG(ts.ContractPrice)/5 FROM ToSupply ts JOIN ( SELECT OrderyDay, count(*) FROM ToSupply GROUP BY OrderDay HAVING count(*) = 5 ) o5 ON ts.OrderDay = o5.OrderDay GROUP BY ts.OrderDay ORDER By AVG(ts.ContractPrice)/5;