Нужна только одна строка с номером недели

#sql #sql-server

Вопрос:

Мне нужно вернуть только одну строку, где Weeknumber будет то же самое, что я выбираю в состоянии where.

 CREATE TABLE #WeekExpense
( 
    WeekNumber VARCHAR(20),
    WeekDayName VARCHAR(50), 
    Expense MONEY
)

INSERT INTO #WeekExpense
VALUES
( 'Week05','Monday', 20 ),
( 'Week05','Tuesday', 60 ),
( 'Week05','Wednesday', 20 ),
( 'Week05','Thurusday', 42 ),
( 'Week05','Friday', 10 ),
( 'Week05','Saturday', 15 ) ,
( 'Week05','Sunday', 8 ),
( 'Week04','Monday', 29 ),
( 'Week04','Tuesday', 17 ),
( 'Week04','Wednesday', 42 ),
( 'Week04','Thurusday', 11 ),
( 'Week04','Friday', 43 ),
( 'Week04','Saturday', 10 ) ,
( 'Week04','Sunday', 15 ),
( 'Week03','Monday', 10 ),
( 'Week03','Tuesday', 32 ),
( 'Week03','Wednesday', 35 ),
( 'Week03','Thurusday', 19 ),
( 'Week03','Friday', 30 ),
( 'Week03','Saturday', 10 ) ,
( 'Week03','Sunday', 15 )
 

Здесь мне нужно выбрать для каждой недели (03,04,05) среднее значение,сумма,количество,мин,макс

 SELECT  WeekNumber ---- I want there was Week03
        COUNT(Expense) asdasd,
        AVG(Expense) AvgOfExpense,
        SUM(Expense) SumOfExpense,
        MIN(Expense) MinOfExpense,
        MAX(Expense) MaxOfExpense
FROM #WeekExpense
WHERE WeekNumber = 'Week03' 
 

Комментарии:

1. Научитесь задавать умные вопросы . Вы, очевидно, столкнулись с ошибкой — поэтому признайте этот факт и включите полное сообщение об ошибке в свой вопрос. И не добавляйте путаницы, используя такие сокращения, как each week (03,04,05) — это не значения, найденные в вашей таблице.

Ответ №1:

Если я вас правильно понимаю, вы просто хотите сгруппировать свой набор результатов по номеру недели. Это можно сделать следующим образом:

 SELECT  WeekNumber, ---- I want there was Week03
        COUNT(Expense) asdasd,
        AVG(Expense) AvgOfExpense,
        SUM(Expense) SumOfExpense,
        MIN(Expense) MinOfExpense,
        MAX(Expense) MaxOfExpense
FROM #WeekExpense
WHERE WeekNumber = 'Week03'
GROUP BY WeekNumber
 

Вот несколько документов для ГРУППЫ ПО:
https://www.w3schools.com/sql/sql_groupby.asp
https://docs.microsoft.com/en-us/sql/t-sql/queries/select-group-by-transact-sql?view=sql-server-ver15

W3schools-хорошее вступление (как обычно), но не так подробно.

Комментарии:

1. спасибо, приятель..