Ниже приведена таблица базы данных (таблица A).Как получить счет и процент с помощью SQL?
SlNo TeamName WorkInfo
---- ------- -------
1 Team1 0
2 Team1 0
3 Team1 1
4 Team2 1
5 Team2 1
6 Team2 1
7 Team3 0
8 Team3 1
У меня есть два текстовых поля для выбора даты начала и окончания. Я хочу отображать детали между этими датами.
Данный ниже запрос дает детали и подсчет, исходя из даты начала и окончания.
SELECT TeamName,Count(DISTINCT CASE WHEN WorkInfo = 1 THEN SlNo end) AS Count1 ,
Count(DISTINCT CASE WHEN WorkInfo = 0 THEN SlNo end) AS Count0 FROM tableA
WHERE (SubmitDate BETWEEN @start AND @end) GROUP BY TeamName
Этот запрос показывает из положить, как приведено ниже:
TeamName Count1 Count0
-------- ----- ------
Team1 1 2
Team2 3 0
Team3 1 1
Я хочу, чтобы отобразить процент на основе greatest count
в Count1
и Count0
. Помогите мне изменить вышеупомянутое решение. The expecting output sample is given below:
Здесь в Count1
3 - это значение greates. Основываясь на этом, я должен найти процент значений Count1. И в Count0
2 - самая большая ценность. Основываясь на этом, я должен найти процент значений Count0.
TeamName Count1 Count0 Percentage1 Percentage0
-------- ----- ------ ----------- -----------
Team1 1 2 33.33% 100%
Team2 3 0 100% 0%
Team3 1 1 33.33% 50%
Помогите найти правильное решение. Спасибо.
Вы используете SQL Server? –
@RaduGheorghiu: Да –