2017-02-14 2 views
0

Компания хочет знать, что произошло с начала 1999 года по найму. Менеджер по персоналу попросил вас произвести подсчет сотрудников, нанятых с тех пор, с разбивкой по возрасту и полу одновременно (т. Е. 17 мужчин, 25 женщин и т. Д.). Напишите запрос, который делает это.SQL: граф, который объединяет/объединяет два столбца

Это то, что у меня есть до сих пор. Я не мог понять, как объединить два столбца одновременно. Есть предположения?

SELECT EmployeeID, COUNT(*) AS "Number of employees" 
FROM Employee 
WHERE Age and Gender 
GROUP BY EmployeeID 
HAVING COUNT(*) BEGIN = 1999 
+0

Не могли бы вы предоставить свои столбцы таблицы и образцы данных в своем вопросе? И если я правильно понимаю ваш вопрос, [эта ссылка] (http://www.w3schools.com/sql/sql_and_or.asp) будет полезной для вас! –

+0

Вот некоторые мысли. У вас есть запрос, который получает результаты «разбиты» по полу? 'GROUP BY EmployeeId' собирает счетчик с разбивкой по идентификатору сотрудника. Подумайте о замене ссылок на 'EmployeeId' на другое выражение, например, на пол. Что же касается разрушения «возраста», то в том, что нынешний возраст сотрудника или их возраст были наняты? Чтобы получить это, кажется, вам нужно знать разницу (в течение полных лет) между «датой проката» и «датой рождения» сотрудника. – spencer7593

ответ

0

Я не очень много уверен ваше требование, но правильно написать запрос выглядит следующим образом, и это может выполнить ваше требование с небольшими изменениями ...

SELECT Gender, COUNT(*) AS "Number of employees", Age 
FROM Employee 
WHERE year(column_name) >= 1999 --Give a real date column here 
GROUP BY Age, Gender 

Просьба представить структуру таблицы и полный желаемый результат для точного ответа.

Смежные вопросы