Как объединить два значения 'count' из разных таблиц (2 столбца, НЕ объединение)
Я хочу получить количество добавленных записей пользователем в 2 таблице. например, у меня есть список пользователей (таблица STF), и я хочу знать, сколько продуктов создал пользователь (в таблице PV1) и сколько продуктов он продал (в таблице dpq), я хочу показать эти данные, как показано ниже:
У меня есть эти 2 запроса, и я не знаю, как показать их в одной таблице с 3 столбцами...
Запрос 1:
select staff_username, COUNT(*) as 'count 1'
from STF right join PV1 on STF.staff_username = PV1.admit_user
group by staff_username, staff_name + ' ' + staff_family
Запрос 2:
select trf_staff_id, COUNT(trf_staff_id)
from dpq join stf on trf_staff_id = stf.staff_username
group by trf_staff_id
2 ответа
Вы можете попробовать объединить два запроса, как это. Из предоставленной вами ограниченной информации кажется, что staff_username совпадает с trf_staff_id, так как вы использовали его в состоянии соединения второго запроса.
SELECT
staff_username,
count_1,
count_2 FROM
(
SELECT
staff_username,
COUNT(*) AS count_1
FROM
STF
RIGHT JOIN
PV1
ON
STF.staff_username = PV1.admit_user
GROUP BY
staff_username,
staff_name + ' ' + staff_family ) QRY_CNT_1 INNEER JOIN
(
SELECT
trf_staff_id,
COUNT(trf_staff_id) AS count_2
FROM
dpq
JOIN
stf
ON
trf_staff_id = stf.staff_username
GROUP BY
trf_staff_id ) QRY_CNT_2 ON
QRY_CNT_2.trf_staff_id = QRY_CNT_1.staff_username
Я думаю, вы хотите совместить два стола count
,Вы могли бы join
и добавить count
но вы даете нам меньше информации, поэтому я не уверен.
SELECT
STF.staff_username,
STF.Data_in_PV1,
dpq.Data_in_dpq
FROM
(
SELECT
staff_username,
COUNT(PV1.admit_user) AS 'Data_in_PV1'
FROM
STF
RIGHT JOIN
PV1
ON
STF.staff_username = PV1.admit_user
GROUP BY
staff_username
) STF
INNER JOIN
(
SELECT
dpq.trf_staff_id,
COUNT(trf_staff_id) AS 'Data_in_dpq'
FROM
dpq
INNER JOIN
stf
ON
dpq.trf_staff_id = stf.staff_username
GROUP BY
dpq.trf_staff_id
) dpq ON dpq.trf_staff_id = STF.staff_username